1. 声明一个set(set集合具有唯一性,相同会被删去)

let s =new Set();
//接收一个数组
let s2=new Set(['1号','2号','3号','4号','5号','6号','7号','8号']);
//set API

//元素个数:
s.size
//添加新元素
s.add('10号')
//删除元素
s.delete('2号')
//检测元素
s.has('5号')
//清空元素
s.clear();
//可以使用迭代器
    for(let v of s2){
        console.log(v);
    }

2.Set实践

数组去重,取交集、并集、差集

<script>
  let arr = [1,2,3,4,5,6,5,4,3,2,1];
//1.数组去重
let result = [...new Set(arr)];
console.log(result);
//2. 交集
let arr2=[5,6,7,8,2,1,5,7]
let result2 = [...new Set(arr)].filter(item=>{
    let s2=new Set(arr2);//1 2 5 6 7 8(对象)
    if(s2.has(item)){
        return true;
    }else{
        return false;
    }
});
console.log(result2);
// result1为result2简写
let result1 = [...new Set(arr)].filter(item=>new Set(arr2).has(item));
console.log(result1);
//3.并集
let union = [...new Set([...arr, ...arr2])];
console.log(union );
//4.差集
let diff=[...new Set(arr)].filter(item =>!(new Set(arr2).has(item)));
console.log(diff);
</script>
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐