迭代集

你可以使用簡單的 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