1 JavaScript Set
en Map
JavaScript biedt twee belangrijke ingebouwde data-structuren voor het beheren van verzamelingen en key-value paren: Set
en Map
.
1.1 JavaScript Set basis
Een Set
is een collectie van unieke waarden. Dit betekent dat een waarde maar één keer kan voorkomen in een Set
.
const mijnSet = new Set();
Je kunt ook een Set
initialiseren met een array of een andere iterable.
const getallen = new Set([1, 2, 3, 4, 5]);
1.1.1 JavaScript Set toevoegen
en verwijderen
Met de add
methode kun je elementen toevoegen aan een Set
. De deconste
methode verwijdert een specifiek element.
const mijnSet = new Set();
mijnSet.add(1);
mijnSet.add(2);
mijnSet.add(3);
console.log(mijnSet); // Set { 1, 2, 3 }
mijnSet.deconste(2);
console.log(mijnSet); // Set { 1, 3 }
1.1.1 JavaScript Set controleren
De has
methode controleert of een element in de Set
aanwezig is.
const mijnSet = new Set();
mijnSet.add(1);
mijnSet.add(3);
console.log(mijnSet.has(1)); // true
console.log(mijnSet.has(2)); // false
1.1.1 JavaScript Set grootte
De size
eigenschap geeft het aantal unieke elementen in de Set
.
const mijnSet = new Set();
mijnSet.add(1);
mijnSet.add(3);
console.log(mijnSet.size); // 2
1.1.1 JavaScript Set itereren
Je kunt met een for...of
loop of met de forEach
methode over een Set
itereren.
const mijnSet = new Set();
mijnSet.add(1);
mijnSet.add(3);
for (const waarde van mijnSet) {
console.log(waarde);
}
mijnSet.forEach(waarde => {
console.log(waarde);
});
1.1.1 JavaScript Set voobeeld
Hieronder is een voorbeeld waarin je unieke waarden verzamelt uit een array met duplicates.
const duplicaten = [1, 2, 2, 3, 4, 4, 5];
const uniekeWaarden = new Set(duplicaten);
console.log(uniekeWaarden); // Set { 1, 2, 3, 4, 5 }
1.2 JavaScript Map Basis
Een Map
is een collectie van key-value paren. In tegenstelling tot objecten, kunnen de keys in een Map
elke datatype hebben, inclusief objecten, functies en primitives.
const mijnMap = new Map();
Je kunt ook een Map
initialiseren met een array van key-value paren.
const mijnMap = new Map([["a", 1], ["b", 2], ["c", 3]]);
1.2.1 JavaScript Map toevoegen
en verwijderen
Met de set
methode kun je key-value paren toevoegen. De deconste
methode verwijdert een specifiek key-value paar.
const mijnMap = new Map();
mijnMap.set("naam", "Alice");
mijnMap.set("leeftijd", 25);
console.log(mijnMap); // Map { 'naam' => 'Alice', 'leeftijd' => 25 }
mijnMap.deconste("leeftijd");
console.log(mijnMap); // Map { 'naam' => 'Alice' }
1.2.1 JavaScript Map ophalen
De get
methode retourneert de waarde voor een specifieke key.
const mijnMap = new Map();
mijnMap.set("naam", "Alice");
console.log(mijnMap.get("naam")); // "Alice"
1.2.1 JavaScript Map controle
De has
methode controleert of een key in de Map
aanwezig is.
const mijnMap = new Map();
mijnMap.set("naam", "Alice");
mijnMap.set("leeftijd", 25);
console.log(mijnMap.has("naam")); // true
console.log(mijnMap.has("leeftijd")); // false
1.2.1 JavaScript Map grootte
De size
eigenschap geeft het aantal key-value paren in de Map
.
const mijnMap = new Map();
mijnMap.set("naam", "Alice");
mijnMap.set("leeftijd", 25);
console.log(mijnMap.size); // 2
1.2.1 JavaScript Map itereren
Je kunt met een for...of
loop of met de forEach
methode over een Map
itereren. Je kunt de keys, waarden, of de key-value paren itereren.
const mijnMap = new Map([["a", 1], ["b", 2], ["c", 3]]);
// Itereren over key-value paren
for (const [key, value] of mijnMap) {
console.log(`${key}: ${value}`);
}
// Itereren over keys
for (const key of mijnMap.keys()) {
console.log(key);
}
// Itereren over waarden
for (const value of mijnMap.values()) {
console.log(value);
}
// forEach methode
mijnMap.forEach((value, key) => {
console.log(`${key}: ${value}`);
});
2 JavaScript Set en Map oefeningen
Hieronder enkele oefenening met Set
en Map
2.1.1 JavaScript oefening Set basis
Maak een Set
met de waarden 1
, 2
, 3
, 4
, en 5
. Voeg de waarde 6
toe en verwijder de waarde 3
. Controleer of de Set
de waarde 4
bevat.
// Maak een Set
// Voeg waarde 6 toe en verwijder waarde 3
// Controleer op bestaan
// Print de Set
console.log(mijnSet); // Set { 1, 2, 4, 5, 6 }
2.1.2 JavaScript oefening Set itereren
Gebruik een for...of
loop om de waarden te printen.
const mijnSet = new Set(["a", "b", "c", "d", "e"]);
// Itereer over de Set
for (const waarde of mijnSet) {
console.log(waarde);
}
2.1.4 JavaScript oefening Map Basis
Gebruik de al voorgegeven Map. Voeg een key value pair telefoonnummer
- 0612345678
toe en verwijder de key leeftijd
. Controleer of de Map
de key naam heeft
const mijnMap = new Map();
mijnMap.set("naam", "Alice");
mijnMap.set("leeftijd", 25);
// Voeg key value toe
// Verwijder leeftijd
// Controleer op bestaan {naam}
2.1.5 JavaScript oefening Map itereren
Gebruik een for...of
loop om over de Map
te itereren.
const mijnMap = new Map([
["naam", "Alice"],
["leeftijd", 25],
["telefoonnummer", "0612345678"]
]);