Heim >Web-Frontend >js-Tutorial >Arbeiten mit Karten und Sets in JavaScript: Ein umfassender Leitfaden
Maps und Sets sind zwei wichtige Datenstrukturen, die in ES6 (ECMAScript 2015) eingeführt wurden und eine erweiterte Funktionalität gegenüber herkömmlichen Objekten und Arrays bieten. Sowohl Maps als auch Sets ermöglichen es Ihnen, eindeutige Werte zu speichern und auf organisiertere und effizientere Weise mit Daten zu arbeiten.
Eine Map ist eine Sammlung von Schlüssel-Wert-Paaren, wobei sowohl Schlüssel als auch Werte einen beliebigen Datentyp haben können. Im Gegensatz zu Objekten, die nur Zeichenfolgen oder Symbole als Schlüssel haben können, erlauben Maps die Verwendung jedes beliebigen Werts (Objekte, Arrays, Funktionen usw.) als Schlüssel.
Um eine Karte zu erstellen, können Sie den Kartenkonstruktor verwenden:
const map = new Map();
Alternativ können Sie eine Map mit einem Array von Schlüssel-Wert-Paaren initialisieren:
const map = new Map([ ['name', 'Alice'], ['age', 25], ['city', 'New York'] ]); console.log(map);
Sie können Einträge mit der set()-Methode hinzufügen:
const map = new Map(); map.set('name', 'John'); map.set('age', 30); map.set('city', 'Los Angeles'); console.log(map);
Sie können mit der get()-Methode auf den mit einem Schlüssel verknüpften Wert zugreifen:
const map = new Map([ ['name', 'Alice'], ['age', 25] ]); console.log(map.get('name')); // Output: Alice console.log(map.get('age')); // Output: 25
Um zu überprüfen, ob ein Schlüssel vorhanden ist, verwenden Sie die Methode has():
const map = new Map([ ['name', 'John'], ['age', 30] ]); console.log(map.has('name')); // Output: true console.log(map.has('city')); // Output: false
Sie können ein Schlüssel-Wert-Paar mit der Methode delete() entfernen:
map.delete('age'); console.log(map.has('age')); // Output: false
So löschen Sie alle Einträge aus der Karte:
map.clear(); console.log(map.size); // Output: 0
Sie können die Schlüssel-Wert-Paare in einer Map mit forEach() oder der for...of-Schleife durchlaufen:
const map = new Map([ ['name', 'Alice'], ['age', 25] ]); // Using forEach map.forEach((value, key) => { console.log(key, value); }); // Using for...of for (const [key, value] of map) { console.log(key, value); }
Ein Set ist eine Sammlung eindeutiger Werte, was bedeutet, dass alle doppelten Werte automatisch entfernt werden. Im Gegensatz zu Arrays, die mehrere identische Elemente speichern können, stellen Sets sicher, dass jeder Wert in der Sammlung eindeutig ist.
Sie können ein Set mit dem Set-Konstruktor erstellen:
const set = new Set();
Alternativ können Sie ein Set mit einem Array von Werten initialisieren:
const set = new Set([1, 2, 3, 4, 5]); console.log(set);
Sie können Werte zu einem Set hinzufügen, indem Sie die Methode add() verwenden:
const set = new Set(); set.add(1); set.add(2); set.add(3); set.add(2); // Duplicate value, won't be added console.log(set); // Output: Set { 1, 2, 3 }
Um zu überprüfen, ob ein Wert in einem Set vorhanden ist, verwenden Sie die Methode has():
console.log(set.has(2)); // Output: true console.log(set.has(4)); // Output: false
Sie können einen Wert aus einem Set entfernen, indem Sie die Methode delete() verwenden:
const map = new Map();
So löschen Sie alle Werte aus dem Satz:
const map = new Map([ ['name', 'Alice'], ['age', 25], ['city', 'New York'] ]); console.log(map);
Sie können die Werte in einem Set mit forEach() oder for...of loop:
durchlaufen
const map = new Map(); map.set('name', 'John'); map.set('age', 30); map.set('city', 'Los Angeles'); console.log(map);
Feature | Map | Set |
---|---|---|
Storage | Stores key-value pairs | Stores unique values only |
Key Types | Any type (objects, arrays, primitive types) | Only values (no keys) |
Uniqueness | Keys must be unique, values can repeat | Values must be unique |
Order of Elements | Iterates in insertion order | Iterates in insertion order |
Size | map.size | set.size |
Methods | set(), get(), has(), delete(), clear() | add(), has(), delete(), clear() |
Größe
Benutzereinstellungen speichern
Maps bieten eine effiziente Speicherung von Schlüssel-Wert-Paaren mit Unterstützung für jeden Datentyp als Schlüssel und behalten die Einfügungsreihenfolge bei.
Sets
Das obige ist der detaillierte Inhalt vonArbeiten mit Karten und Sets in JavaScript: Ein umfassender Leitfaden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!