Set 基本用法
1、Set
类似于数组,但是其成员的值都是唯一的,没有重复的值
2、Set
本身是一个构造函数,用来生成 Set
数据结构
const s = new Set()
[2, 3, 5, 4, 5, 2, 2].forEach(x => s.add(x))
for (let i of s) {
console.log(i)
}
// 2 3 5 4
上面代码通过 add()
方法向 Set
结构加入成员,结果表明 Set 结构不会添加重复的值。
3、Set
可以接受一个数组(或者具有 iterable
接口的其他数据结构)作为参数,用来初始化
// example 1
const set = new Set([1, 2, 3, 4, 4])
[...set]
// [1, 2, 3, 4]
// example 2
const items = new Set([1, 2, 3, 4, 5, 5, 5, 5])
items.size // 5
// example 3
const set = new Set(document.querySelectorAll('div'))
set.size // 56
// same as:
const set = new Set()
ducoment
.querySelectorAll('div')
.forEach(div => set.add('div'))
set.size //56
上面的代码中, example 1
和 example 2
都是 Set
函数接受数组作为参数,例三是接受类似数组的对象作为参数
4、向 Set
加入值的时候,不会发生类型转换,所以 5
和 '5'
是两个不同的值
5、向 Set
加入 NaN
时,认为 NaN
等于自身 🤪
6、向 Set
加入对象时,认为两个对象总是不相等
Last updated
Was this helpful?