set 集合

62 阅读1分钟

类似于数组,可以使用扩展运算和 for...of,具有iterator接口

let s=new set(['大事','小事','好事','坏事','小事']);

元素个数
console.log(s.size);

添加元素
s.add('喜事');

删除元素
s.delete('坏事');

查找元素
console.log(s.has('糟心事'));

清空
s.clear();
console.log(s);

set实践

let arr=[1,2,3,4,5,4,3,2,1];

数组去重
let result=[...new set(arr)];
console.log(result);

交集
let arr2=[4,5,6,5,6];
let result=[...new set(arr)].filter(item=>{
let s2=new set(arr2);
if(s2.has(item)){
return ture;
}else{
return false;
}
})
console.log(result);

-----------------

let result=[...new set(arr)].filter(item=>new set(arr2).has(item));.


并集
let union=[...new set([...arr,...arr2])];
console.log(union);

差集
let diff=[...new set(arr)].filter(item=>!(new set(arr2).has(item)));
console.log(diff);