如何将值数组添加到 Set

2022-01-17 00:00:00 set javascript

将数组的所有值添加到 Set 的老式方法是:

The old school way of adding all values of an array into the Set is:

// for the sake of this example imagine this set was created somewhere else 
// and I cannot construct a new one out of an array
let mySet = new Set()

for(let item of array) {
  mySet.add(item)
}

有没有更优雅的方式来做到这一点?也许是 mySet.add(array)mySet.add(...array)?

Is there a more elegant way of doing this? Maybe mySet.add(array) or mySet.add(...array)?

PS:我知道两者都不起作用

PS: I know both do not work

推荐答案

虽然 Set API 仍然非常简约,但您可以使用 Array.prototype.forEach 并稍微缩短您的代码:

While Set API is still very minimalistic, you can use Array.prototype.forEach and shorten your code a bit:

array.forEach(item => mySet.add(item))

// alternative, without anonymous arrow function
array.forEach(mySet.add, mySet)

相关文章