Artikelverzeichnis
Karte
1 Karteneinführung
- Map wird zum Speichern von Schlüssel-Wert-Paar-Strukturdaten **(Schlüsselwert)** verwendet
- Die in Object gespeicherten Daten können als Schlüssel-Wert-Paarstruktur betrachtet werden
- Der Hauptunterschied zwischen Karte und Objekt:
- Der Eigenschaftsname in Object kann nur eine Zeichenfolge oder ein Symbol sein . Wenn ein Eigenschaftsname eines anderen Typs übergeben wird, konvertiert der JS-Interpreter ihn automatisch in eine Zeichenfolge
- Jeder Werttyp in der Karte kann der Schlüssel der Daten sein
const obj = {
"name":"孙悟空",
'age':18,
[Symbol()]:"哈哈",
[obj2]:"嘻嘻"
}
2 Erstellen Sie eine Karte
const map = new Map()
map.set("name", "孙悟空")
map.set(obj2, "呵呵")
map.set(NaN, "哈哈哈")
map.delete(NaN)
// map.clear()
console.log(map)
console.log(map.get("name"))
console.log(map.has("name"))
3 Einführung in gängige Methoden
map.size()
Rufen Sie die Anzahl der Schlüssel-Wert-Paare in der Karte abmap.set(key, value)
Fügen Sie der Karte Schlüssel-Wert-Paare hinzumap.get(key)
Ermitteln Sie den Wert gemäß dem Schlüsselmap.delete(key)
Angegebene Daten löschenmap.has(key)
Überprüfen Sie, ob der angegebene Schlüssel in der Karte enthalten istmap.clear()
Löschen Sie alle Schlüssel-Wert-Paaremap.keys()
Holen Sie sich alle Schlüssel der Kartemap.values()
Holen Sie sich alle Werte der Karte
4 Karte in Array konvertieren
Methode 1: AnwendungArray.from(map)
const map = new Map()
map.set("name", "孙悟空")
map.set("age", 18)
map.set({
}, "呵呵")
// 将map转换为数组
const arr = Array.from(map) // [["name","孙悟空"],["age",18]]
const arr = [...map]
console.log(arr)
Methode 2: Dekonstruktor verwenden
Diese Methode wird empfohlen, da sie einfacher zu schreiben ist
const map = new Map()
map.set("name", "孙悟空")
map.set("age", 18)
map.set({
}, "呵呵")
// 将map转换为数组
const arr = [...map]
console.log(arr)
5 Erstellen einer Karte aus einem Array
const map2 = new Map([
["name", "猪八戒"],
["age", 18],
[{
}, () => {
}],
])
console.log(map2)
6 Durchqueren der Karte
Methode 1: verwendenfor-of
const map = new Map()
map.set("name", "孙悟空")
map.set("age", 18)
map.set({
}, "呵呵")
for (const [key, value] of map) {
// const [key, value] = entry
console.log(key, value)
}
Methode 2: VerwendenforEach
const map = new Map()
map.set("name", "孙悟空")
map.set("age", 18)
map.set({
}, "呵呵")
map.forEach((key, value)=>{
console.log(key, value)
})