JavaScript-kaarten
Een kaart bevat sleutel-waardeparen waarbij de sleutels elk gegevenstype kunnen zijn.
Een kaart onthoudt de oorspronkelijke invoegvolgorde van de toetsen.
Essentiële kaartmethoden
Methode | Beschrijving |
---|---|
nieuwe kaart() | Maakt een nieuwe kaart |
set() | Stelt de waarde in voor een sleutel in een kaart |
krijgen() | Haalt de waarde op voor een sleutel in een kaart |
verwijderen() | Verwijdert een kaartelement gespecificeerd door de sleutel |
heeft() | Retourneert waar als een sleutel in een kaart bestaat |
voor elk() | Roept een functie aan voor elk sleutel/waarde-paar in een Map |
vermeldingen() | Retourneert een iterator met de paren [sleutel, waarde] in een kaart |
Eigendom | Beschrijving |
maat | Retourneert het aantal elementen in een kaart |
Een kaart maken
U kunt een JavaScript-kaart maken door:
- Een array doorgeven aan
new Map()
- Maak een kaart en gebruik
Map.set()
De nieuwe Map()-methode
U kunt een kaart maken door een array door te geven aan de new Map()
constructor:
Voorbeeld
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
De set() methode
U kunt elementen aan een kaart toevoegen met de set()
methode:
Voorbeeld
// Create a Map
const fruits = new Map();
// Set Map Values
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);
De set()
methode kan ook worden gebruikt om bestaande kaartwaarden te wijzigen:
Voorbeeld
fruits.set("apples", 200);
De get() methode
De get()
methode krijgt de waarde van een sleutel in een kaart:
Voorbeeld
fruits.get("apples"); // Returns 500
De grootte Property:
De size
eigenschap retourneert het aantal elementen in een kaart:
Voorbeeld
fruits.size;
De delete()-methode
De delete()
methode verwijdert een kaartelement:
Voorbeeld
fruits.delete("apples");
De has()-methode
De has()
methode retourneert true als er een sleutel in een map bestaat:
Voorbeeld
fruits.has("apples");
Probeer dit:
fruits.delete("apples");
fruits.has("apples");
JavaScript-objecten versus kaarten
Verschillen tussen JavaScript-objecten en kaarten:
Object | Kaart | |
---|---|---|
itereerbaar | Niet direct itereerbaar | Direct itereerbaar |
Maat | Heb geen eigenschap voor grootte | Heb een eigenschap van de grootte |
Sleuteltypes | Sleutels moeten strings (of symbolen) zijn | Sleutels kunnen elk datatype zijn |
Sleutelvolgorde | Sleutels zijn niet goed besteld | Sleutels worden geordend door invoeging |
Standaardinstellingen | Standaardsleutels hebben | Heb geen standaardsleutels |
De forEach()-methode
De forEach()
methode roept een functie aan voor elk sleutel/waarde-paar in een kaart:
Voorbeeld
// List all entries
let text = "";
fruits.forEach (function(value, key) {
text += key + ' = ' + value;
})
De items() Methode
De entries()
methode retourneert een iteratorobject met de [sleutel, waarden] in een kaart:
Voorbeeld
// List all entries
let text = "";
for (const x of fruits.entries()) {
text += x;
}
Browserondersteuning
JavaScript-kaarten worden ondersteund in alle browsers, behalve Internet Explorer:
Chrome | Edge | Firefox | Safari | Opera |