迭代集

你可以使用简单的 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