JS 求交集,并集,差集,子集 forEach和es6两种方法

1.并集: [A B C R U ]


        let set111 = new Set(["A", "B", "C"])
        let set222 = new Set(["A", "R", "U"])

        let unionset = new Set();

        set111.forEach((ele) => {
            if (!unionset.has(ele)) {
                unionset.add(ele)
            }
        })

        set222.forEach((ele) => {
            if (!unionset.has(ele)) {
                unionset.add(ele)
            }
        })

        console.log(unionset);
        
        //es6
        let union = new Set([...set111, ...set222]);
        console.log(union);     

2.交集: [A ]

    let differtset = new Set();
    set111.forEach((ele) => {
        if (set222.has(ele)) {
            differtset.add(ele)
        }
    })

    console.log(differtset);

    //es6
    let intersect = new Set([...set111].filter(x => set222.has(x)));
    console.log(intersect);

3.差集

// set111 - set222 [ B C]

    // let set111 = new Set(["A","B","C"])
    // let set222 = new Set(["A","R","U"])

    let chaset = new Set();

    set111.forEach((ele) => {
        if (!set222.has(ele)) {
            chaset.add(ele)
        }
    })

    console.log(chaset);

    //es6
    let difference = new Set([...set111].filter(x => !set222.has(x)));
    console.log(difference);

相关文章

原文连接:https://www.cnblogs.com/dupd/p/5951311.htmlES6...
以为Es6,javascript第一次支持了module。ES6的模块化分为导...
视频讲解关于异步处理,ES5的回调使我们陷入地狱,ES6的Prom...
TypeScript什么是TypeScript?TypeScript是由微软开发的一款开...
export class AppComponent { title = 'Tour of heroes...
用 async/await 来处理异步昨天看了一篇vue的教程,作者用as...