迭代集
你可以使用簡單的 for-of 迴圈來迭代 Set:
const mySet = new Set([1, 2, 3]);
for (const value of mySet) {
console.log(value); // logs 1, 2 and 3
}
迭代一個集合時,它總是按照它們首次新增到集合中的順序返回值。例如:
const set = new Set([4, 5, 6])
set.add(10)
set.add(5) //5 already exists in the set
Array.from(set) //[4, 5, 6, 10]
還有一種 .forEach()
方法,類似於 Array.prototype.forEach()
。它有兩個引數,callback
,將為每個元素執行,以及可選的 thisArg
,它將在執行 callback
時用作 this
。
callback
有三個引數。前兩個引數都是 Set 的當前元素(與 Array.prototype.forEach()
和 Map.prototype.forEach()
的一致性),第三個引數是 Set 本身。
mySet.forEach((value, value2, set) => console.log(value)); // logs 1, 2 and 3