迭代地圖
Map 有三種返回迭代器的方法:.keys()
,.values()
和 .entries()
。.entries()
是預設的 Map 迭代器,包含 [key, value]
對。
const map = new Map([[1, 2], [3, 4]]);
for (const [key, value] of map) {
console.log(`key: ${key}, value: ${value}`);
// logs:
// key: 1, value: 2
// key: 3, value: 4
}
for (const key of map.keys()) {
console.log(key); // logs 1 and 3
}
for (const value of map.values()) {
console.log(value); // logs 2 and 4
}
地圖也有 .forEach()
方法。第一個引數是一個回撥函式,它將為對映中的每個元素呼叫,第二個引數是在執行回撥函式時將用作 this
的值。
回撥函式有三個引數:value,key 和 map 物件。
const map = new Map([[1, 2], [3, 4]]);
map.forEach((value, key, theMap) => console.log(`key: ${key}, value: ${value}`));
// logs:
// key: 1, value: 2
// key: 3, value: 4