Hva er et kartobjekt i JavaScript?

Hva er et kartobjekt i JavaScript?
JavaScript er et programmeringsspråk som gir webapplikasjoner og websider muligheten til å tenke og handle ved å gjøre dem dynamiske og interaktive. Når du programmerer, vil det ofte forvirre deg med hvilken datastruktur du vil bruke for lagring av data som enkelt kan administreres og forstås. For å holde samlinger av data, er matriser og objekter ofte brukte datastrukturer. Nøkkelverdipar lagres i objekter, mens indekserte lister lagres i matriser. Så kom Ecmascript 2015 som introduserte et annet iterable objekt kjent som kart for å gi utviklere mer fleksibilitet. Så i dette innlegget vil vi diskutere hva et kartobjekt i JavaScript er og diskutere noen praktiske eksempler sammen med skjermbilder av utdataene.

Hva er et kartobjekt?

Kartobjekt som et vanlig objekt er en samling av elementer som lagrer nøkkelverdipar; Hovedforskjellen er imidlertid at nøklene kan være av hvilken som helst type. Det skal også bemerkes at kartobjektet husker rekkefølgen på nøkkelverdi-paret som ble satt inn i kartobjektet.

Syntaks:

var kart = nytt kart ([it]);

Hvor den er valgfritt og et iterable objekt hvis elementer er lagret som nøkkelverdipar.

Kartobjekt har noen egenskaper og metoder som er definert nedenfor:

  • For oppretting av nytt kart -> Nytt kart ()
  • For å lagre en verdi ved hjelp av en nøkkel -> kart.sett (tast, verdi)
  • For å få verdien av nøkkelen -> Kart.få (nøkkel)
  • Hvis nøkkelen ikke eksisterer, må du kartlegge.få (nøkkel) vil returnere udefinert
  • For å fjerne alt fra kartet -> Kartet.klar()
  • For å få størrelsen på kartet -> Kartet.størrelse
  • For å slette en verdi ved hjelp av nøkkelen -> MAP.slett (tast)

Kartobjekteksempel1

I koden gitt nedenfor startet vi først kartobjektet og satte deretter verdiene. Den første tasten som vi angir er en strengnøkkel, den andre er en numerisk nøkkel og den tredje er en boolsk nøkkel. Så konsollet vi logger på resultatet av å få verdiene til nøklene som er gitt. Vi sjekker også størrelsen på kartobjektet som returnerer 3.

// kartoppretting
var kart = nytt kart ();
// Angi nøkkelverdipar på kart
kart.sett ('1', 'streng'); // en strengtast
kart.sett (1, 'nummer'); // en numerisk tast
kart.sett (sant, 'boolsk'); // en boolsk nøkkel
// Få info fra Map
konsoll.logg (kart.få (1)); // Antall
konsoll.logg (kart.få ('1')); // streng
konsoll.logg (kart.størrelse); // 3

Kartobjekteksempel2

Vi kan også angi nøklene til kartobjektet som objekter. La oss demonstrere dette ved hjelp av den undergitte koden:

var student1 = navn: "jhon";
// for hver student, la oss lagre sine merker
var merker = nytt kart ();
// student1 er nøkkelen for selve kartet, og student 1 er et objekt
merker.sett (student1, 93);
konsoll.Logg (merker.få (student1)); // 93

I eksemplet ovenfor startet vi først et objekt med navnet på Student1 og opprettet deretter et kartobjekt. Etter det satte vi merkene til Student1 og konsollet logger av Student1 -merker1. Det skal bemerkes at student1 i seg selv er et objekt, men fungerer som nøkkelen her. Vi får utgangen 93 som vist nedenfor:

Iterere over karttastene

La oss nå se hvordan vi kan iterere over karttastene for hvilket formål vi vil bruke en for loop og kart.Keys () -metode. Kartet.Keys () -metoden vil returnere alle tastene til kartobjektet i den rekkefølgen de ble satt inn i kartobjektet.

La oss sette i gang et kartobjekt og gi navn som nøkler og verdier som stillingsposisjon. Så implementerte vi en for loop som vil konsollere alle tastene/navnene i kartobjektet.

// Opprette kartobjekt
var ansatte = nytt kart ([
["John", 'admin'],
["Sarah", 'Editor'],
["Sam", 'forfatter']
]);
// for loop
for (var navn på ansatte.Keys ())
konsoll.logg (navn);

Utgangen til koden ovenfor er:

For å iterere over kartverdier, vil vi ganske enkelt endre ansatte.nøkler () til ansatte.verdier ():

// Opprette kartobjekt
var ansatte = nytt kart ([
["John", 'admin'],
["Sarah", 'Editor'],
["Sam", 'forfatter']
]);
// for loop
for (var ansattes stilling.verdier ())
konsoll.logg (posisjon);

Slette element ved hjelp av tast

I dette eksemplet vil vi slette en oppføring i kartobjektet ved å bruke slett () metode:

// Opprette kartobjekt
var ansatte = nytt kart ([
["John", 'admin'],
["Sarah", 'Editor'],
["Sam", 'forfatter']
]);
// Slette John fra ansatte
ansatte.slette ("John");
// for loop
for (var navn på ansatte.Keys ())
konsoll.logg (navn);

Vi kan se det John har blitt slettet og manglet i utdataene:

Konklusjon

Kartobjekt ble introdusert i ES6 og før kartobjekt ble vanlige objekter brukt. Imidlertid har et objekt noen mangler som et objekt alltid har en standard nøkkelprototype, og man kan ikke bruke et objekt som en nøkkel. For å løse dette problemet ble kartet introdusert som er en samling av elementer som er lagret i nøkkelverdipar akkurat som objekter, men her kan nøkler være av hvilken som helst type. I dette innlegget så vi et kartobjekt i JavaScript og diskuterte to eksempler. Bortsett fra det, implementerte vi også og så på forskjellige metoder og egenskaper til kartobjekter i JavaScript.