ECMAscript新特性 - Set 数据结构

80 阅读1分钟

ES2015 中提供了一个叫做 Set 的全新数据结构,可以把它理解为集合。它与传统的数组非常相似,不过 Set 内部的成员是不允许重复的。通过这个类型构造的实例就可以用来存放不重复的数据,所以它最常用的应用场景就是为数组中的元素去重。

const s = new Set();
s.add(1) // 往集合当中添加数据,并返回集合对象本身所以说可以进行链式调用
 .add(2)
 .add(3)
 .add(2) // 如过添加了一个已存在的值,所添加的这个值就会被忽略掉
for (let i of s) { // 集合的遍历
    console.log(i)
}
s.size // 获取集合的长度
s.has(8) // 判断集合中是否存在某一个值
s.delete(1) // 删除集合中某个特定的值
s.clear() // 清空集合
const arr = [1, 2, 1, 3, 4, 1];
const result = Array.from(new Set(arr))