天天看点

ES6中Set总结

回顾:数组的声明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元素