Singletons i JavaScript

Singletons i JavaScript
Singleton i JavaScript refererer til et objekts forekomst som bare kan instantieres en gang. En singleton forsikrer at en klasse ikke kan ha mer enn en forekomst i stedet at den har nøyaktig ett forekomst og har globalt omfang. Singletons er globale for hele applikasjonen, så noen ganger kan det skape vanskeligheter ettersom hele applikasjonen er avhengig av dem.

Nå vil vi diskutere syntaksen til Singletons klasse, og Singletons funksjon én etter en. Vi vil også diskutere hvordan du får tilgang til forekomstene deres i detalj.

Singleton -metoden i JavaScript

Det er mange metoder som kan brukes til å erklære en singleton, en veldig grunnleggende måte å erklære en singleton er som:

var singletonexample =
fname: 'Joe',
Lname: 'Clarke',
SimpleMethod: funksjon ()
Returner dette.fname + " + dette.lname;
,
;
konsoll.Logg ("SimpleMethod:", SingletOnexample.simplemethod ());

Utgangen til denne koden vil være:

Singleton -klasse i JavaScript

Å implementere en Singleton -klasse i JavaScript er ikke veldig komplisert, den grunnleggende syntaksen til Singleton -klassen vil være:

La Check_Instance = NULL;
klasseansatt
konstruktør (id, navn, by, betegnelse)
hvis (!sjekk_instans)
dette.id = id;
dette.Navn = navn;
dette.by = by;
dette.betegnelse = betegnelse;
check_instance = dette;

ellers

return check_instance;



const emp1 = ny ansatt (1, 'Roman', 'Paris', 'manager');
konsoll.Logg ("Første ansatt:", EMP1);

Her opprettet vi en klasse som heter ansatt og en variabel som heter Check_Instance med en nullverdi. Inne i klassen bruker vi IF-uttalelse for å sjekke om forekomsten er null eller ikke, og om forekomsten er null, vil IF-statementet bli utført ellers vil det ganske enkelt returnere 'check_instance'.

Produksjon:

Lag nå en annen forekomst og sjekk hva som vil skje når vi oppretter to forekomster av en singleton -klasse.

For dette formålet utvider bare koden ovenfor litt og oppretter en annen forekomst av klassen og tildeler noen egenskaper til den:

La Check_Instance = NULL;
klasseansatt
konstruktør (id, navn, by, betegnelse)
hvis (!sjekk_instans)
dette.id = id;
dette.Navn = navn;
dette.by = by;
dette.betegnelse = betegnelse;
check_instance = dette;

ellers

return check_instance;



const emp1 = ny ansatt (1, 'Roman', 'Paris', 'manager');
const emp2 = ny ansatt (2, 'seth', 'New York', 'direktør');
konsoll.Logg ("Første ansatt:", EMP1);
konsoll.Logg ("Andre ansatte:", emp2);

Implementer nå koden ovenfor og observer om en ny ansatt opprettes eller ikke:

Produksjon:

Utgangen vil bekrefte at den ikke opprettet den andre forekomsten i stedet den returnerer den samme forekomsten igjen:

Konklusjon

Singletons er et av de enkleste designmønstrene å forstå. Singleton -mønstre er måten å lage et enkelt objekt som kan deles mellom en rekke forskjellige ressurser gjennom hele applikasjonen uten å gjenskape disse objektene. Hvis noen ringer konstruktøren til en klasse, vil den returnere samme forekomst igjen og igjen.