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