set是一种新的数据结构,类似于数组,但是成员唯一,没有索引(就就是没有下标)
获取set的长度不是length而是size
可以使用for of 与forEach对set进行遍历
方法:
(1)add(x) 添加元素
(2)delete(x) x不是索引,而是set中的具体的值
(3)has(x) 验证是否存在,返回布尔值
(4)clear() 不需要参数,清除所有成员
let set = new Set([1,1,1,2,3,4,4,4,5,6]);
console.log(set);
let set = new Set([1,1,1,2,3,4,4,4,5,6]);
for(x of set){
console.log(x)
}
上述两处代码中,前者直接打印出数组,后者进行一个遍历,将数组中的所有元素都遍历一遍打印出来。
let set = new Set([1,1,1,2,3,4,4,4,5,6]);
set.add(8);
set.add(9);
set.add(1);
console.log(set);
在上述代码中添加一行代码set.delete(4); 打印结果会将数组中的4删除,打印结果如下图所示
再次添加set.clear();之后会清除之前的所有元素,成为空数组,打印结果如下图所示
通过学习set的使用方法,我们可以运用到数组去重的小案例中
let set = new Set([1,1,1,2,3,4,4,4,5,6]);
Array.prototype.singleArr = function() {
return [...new Set(this)];
}
console.log(set);