微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐