回顾:数组的声明2种方式
var arr=[1,2,3];
var arr=new Array(1,2,3);
认识set:set是一系列无序和无重复值的集合
声明: const s=new Set()
添加属性: s.add=1;
Set实例的方法和属性
方法:
1、add
const s=new Set();
s.add(1).add(2).add(3) //可连续增加值
2、has
s.has(1) //true,判断是否有指定成员
3、delete
s.delete(1) //若删除一个不存在的,什么也不会发生,与clear区别在于一个一个删除
4、clear
s.clear();
5、forEach
s.forEach(function(value,key,s){
},document) //set中value=key,按照成员添加进集合的顺序遍历,第二个参数用于指定this指向
6、属性size
s.size; //可以查看成员个数,类似于length
复制一个set
const m=new Set(s);
判断重复的方式
set中对重复值的判断遵循严格相等 特殊情况:set会把NaN===NaN为true;
Set应用
1、数组去重
console.log([...new Set[1,2,1]]);
2、字符串去重
console.log([...new Set('adsa')].join(''))
3、存放DOM元素