类似于数组,可以使用扩展运算和 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);