JavaScript svakmapobjekt | Forklart

JavaScript svakmapobjekt | Forklart
De JavaScript svakmapobjekter brukes til å lagre nøkkelverdi par. Et WeakMap -objekt er forskjellig fra et kartobjekt i det aspektet du må lagre “gjenstand”Som en nøkkel i det svake Map -objektet, og disse objektene må henvises svakt. I kontrast lar kartobjektene deg legge til primitive verdier som strenger, boolaner, symboler og tall til dem.

WeakMap -objekter holdes svakt, noe som betyr at hvis referansene relatert til en spesifikk nøkkel fjernes, eller objektet blir slettet, vil søppelsamlingen deretter fjerne svakmap -elementet når det bestemmer at verdien blir kartlagt til det spesifiserte objektet.

Denne oppskrivningen vil forklare JavaScript WeakMap-objektet ved hjelp av passende eksempler. Så la oss starte!

JavaScript svakmapobjekt

I ES6 ble en ny samling introdusert, kjent som WeakMap -objekt. Denne typen samling brukes først og fremst til å lagre nøkkelverdipar i den. WeakMap -objektet tillater deg å lage private variabler som kan nås fra utenfor klassen. Du kan også bruke JavaScript WeakMap -objekt for å lagre metadata relatert til elementet i dokumentobjektmodellen i en nettleser.

JavaScript svakmapobjektkonstruktør

I JavaScript brukes WeakMap -objektkonstruktøren til å lage et nytt WeakMap -objekt. Det opprettede objektet kan deretter brukes til å lagre nøkkelverdipar.

Du kan opprette et tomt svaktmap og deretter legge til nøkkelverdiparet til det senere ved hjelp av SET () -metoden.

Syntaksen for å lage et tomt svakmap () -objekt er gitt nedenfor:

const weakMap = new WeakMap ([]);

En annen metode er å passere nøkkelverdi-paret som argumenter på tidspunktet for å opprette svaktmap-objektet ved hjelp av konstruktøren:

const weakMap = new WeakMap ([nøkkel, verdi]);

JavaScript WeakMap Object Set () Metode

Set () -metoden brukes til å legge til eller endre nøkkelverdiparene til JavaScript WeakMap-objektet.

Syntaks av JavaScript WeakMap Object Set () Metode

WeakMapObject.sett (tast, verdi)

Her, "nøkkel”Representerer elementets nøkkel som må settes, og“verdi”Er verdien av et element som vil bli satt for den spesifiserte nøkkelen til“WeakMapObject”. Denne metoden vil returnere det oppdaterte WeakMapObject.

Eksempel: Bruke JavaScript WeakMap Object Set () -metode

Først av alt vil vi lage “svakmap”Og“obj1”Objekter som har følgende“nøkkelverdi" par:

var svakmap = nytt svakmap ();
var obj1 = navn: "John";

I neste trinn vil vi legge til "obj1”Som nøkkel og“Velkommen”Som dens verdi ved å bruke WeakMap -objektets SET () -metode:

svakmap.sett (obj1, 'velkomst');
konsoll.logg (svakmap);

Utførelse av det ovennevnte programmet vil vise følgende utgang:

Det handlet om å legge til “nøkkelverdi”Par til det svake Map -objektet. Nå vil vi flytte ADD og demonstrere andre JavaScript WeakMap -objektmetoder.

JavaScript svakmap -objekt har () metode

JavaScript har () -metoden for svake MAP -objekt brukes til å verifisere om svake Map -objektet inneholder det spesifiserte objektet eller ikke.

Syntaks av JavaScript WeakMap -objektet har () metode

WeakMapObject.har (nøkkel)

nøkkel”Argument i ovennevnte syntaks er nøkkelen som vil bli søkt i“WeakMapObject”. Hvis den spesifiserte tasten er til stede i den opprettede svakeMapObject, vil har () -metoden returnere “ekte“; Ellers er verdien satt til “falsk”.

Eksempel: Bruke JavaScript WeakMap -objekt har () -metoden

I det undergitte eksemplet vil vi lage to objekter “obj1”Og“svakmap”. Etter å ha gjort det, vil vi passere “obj1" som "nøkkel”Til svakmapobjektet. “verdi" av det spesifiserte objektet er satt som "Velkommen”:

var svakmap = nytt svakmap ();
var obj1 = navn: "marie";
svakmap.sett (obj1, 'velkomst');

Deretter vil vi påberope deg svakmapobjektet "har ()”Metode for å bestemme om“obj1”Eksisterer i WeakMap -objekt:

konsoll.Logg (WeakMap.har (obj1));

I dette tilfellet, "obj1”Er til stede i“svakmap”Objekt, så“har ()”Metoden kommer tilbake“ekte”. Imidlertid, hvis den spesifiserte nøkkelen ikke eksisterer, "falsk”Vil bli vist som utgang:

Ovennevnte “svakmap.har ()”Metode returnert”Velkommen”Som verdien av“obj1”Nøkkel.

JavaScript svakmap -objekt get () metode

JavaScript get () -metoden henter “verdi”Av den spesifiserte tasten har du lagt til i WeakMap -objektet.

Syntaks av JavaScript WeakMap -objekt Get () Metode

WeakMapObject.få (nøkkel)

Her, “nøkkel”Representerer elementets nøkkel som må hentes fra“WeakMapObject”. Denne metoden vil returnere “verdi”For den ekstra tasten.

Eksempel: JavaScript svakmap -objekt get () metode

Vi vil lage en “svakmap”Objekt som omfatter“obj1”Som nøkkel og“Velkommen”Som dens verdi:

var svakmap = nytt svakmap ();
var obj1 = navn: "alex";

Den spesifiserte operasjonen vil bli utført ved hjelp av SET () -metoden:

svakmap.sett (obj1, 'velkomst');

Deretter vil vi sjekke eksistensen av "obj1”I“svakmap”Objekt:

konsoll.Logg (WeakMap.har (obj1));

Til slutt vil vi få tilgang til verdien av "obj1”Bruke JavaScript WeakMap -objektet Get () Metode:

konsoll.Logg (WeakMap.få (obj1));

Ta en titt på utdataene fra det medfølgende programmet:

JavaScript svakmapobjekt Delete () -metode

Delete () -metoden brukes til å fjerne eller slette et element fra et JavaScript WeakMap -objekt.

Syntaks av JavaScript WeakMap Object Delete () Metode

WeakMapObject.slett (tast)

I Delete () -metoden, nøkkel du vil slette fra “svakmapobjekt ” vil bli gitt som et argument. Etter å ha slettet den spesifiserte tasten, vil Delete () -metoden returnere “ekte”; Ellers er retursaken satt til “falsk”Hvis den spesifiserte tasten ikke finnes i WeakMapObject.

Eksempel: Bruke JavaScript WeakMap Object Delete () -metode

Følgende eksempel benyttet JavaScript “slett ()”Metode for å slette“obj1" fra "svakmap”Objekt. Men før det, la oss lage de nevnte objektene:

var svakmap = nytt svakmap ();
var obj1 = navn: "Stepheny";
svakmap.sett (obj1, 'velkomst');

Vi vil også påberope deg svakmapobjektet "har ()”Metode for å bekrefte eksistensen av“obj1”I WeakMap, før og etter sletting:

konsoll.Logg (WeakMap.har (obj1));
svakmap.slett (obj1);
konsoll.Logg (WeakMap.har (obj1));

Den ovennevnte utgangen betyr at vi har slettet "obj1" fra "svakmap”Objekt. Den første har () metoden returnert “ekte" fordi "obj1”Var til stede i det svake Map -objektet på det tidspunktet. Den andre har () metoden returnert “falsk", Ettersom OBJ1 ikke lenger eksisterer i det svake Map -objektet etter å ha ringt JavaScript WeakSet -objektet slett () metode.

Konklusjon

JavaScript WeakMap-objektet brukes til å lagre svakt holdte nøkkelverdipar. Sammenlignet med kart, kan du ikke lagre primitive verdier som strenger, symboler, booleanere og tall i et svakt Map -objekt. WeakMap -objekter kan brukes til å lage private variabler i en klasse eller butikkmetadata av et DOM -element i nettleseren. Denne oppskrivningen forklarte JavaScript WeakMap-objekt ved hjelp av passende eksempler.