【ES】笔记-Set集合实践

JS

javascript 复制代码
    <script>
        let arr=[1,2,3,4,5,4,3,2,1];
        //1.数组去重
        let result0=[...new Set(arr)];
        console.log(`数组去重${result0}`);

        //2.交集
        let arr2=[4,5,6,5,6];
        let result=[...new Set(arr)].filter(item=>{
            let s2=new Set(arr2);//4 5 6
            if(s2.has(item)){
                return true;
            }else{
                return false;
            }

        })
        console.log(`交集${result}`);
        let result2=[...new Set(arr)].filter(item=>new Set(arr2).has(item));
        console.log(`交集${result2}`);

        //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>
相关推荐
鸽子一号8 小时前
c#笔记之lambda表达式和linq
笔记·c#·linq
南风知我意9578 小时前
JavaScript 惰性函数深度解析:从原理到实践的极致性能优化
开发语言·javascript·性能优化
Можно8 小时前
pages.json 和 manifest.json 有什么作用?uni-app 核心配置文件详解
前端·小程序·uni-app
hzhsec8 小时前
钓鱼邮件分析与排查
服务器·前端·安全·web安全·钓鱼邮件
爱看老照片8 小时前
uniapp传递数值(数字)时需要使用v-bind的形式(加上冒号)
javascript·vue.js·uni-app
#做一个清醒的人8 小时前
Electron 保活方案:用子进程彻底解决原生插件崩溃问题
前端·electron·node.js
四千岁8 小时前
Obsidian + jsDelivr + PicGo = 免费无限图床:一键上传,全平台粘贴即发
前端·程序员·github
慧一居士8 小时前
CSS中 ::deep 作用,使用场景,使用方法介绍
前端·css·vue.js
周聪灬8 小时前
iOS runtime(2)-class结构和消息转发机制
前端