js中数组去重的三种方法

作者: 绿芽 | 来源:发表于2021-09-11 14:38 被阅读0次

    数组去重的三种方法:

    1、 利用es6中 set类型实现数组去重。

        let arr = [1,2,1,2,3,1,4,'1','2','1','3'];
        console.log([...new Set(arr)]); // [1, 2, 3, 4, "1", "2", "3"]
    

    2、 新建一个空数组,然后循环之前的数组,判断每一项是否新数组里面,不存在的话push到新数组里面。

        let arr = [1,2,1,2,3,1,4,'1','2','1','3'];
        let newArr = [];
        arr.forEach(item => {
            if (newArr.indexOf(item) === -1) {
                newArr.push(item);
            }
        });
        console.log(newArr); // [1, 2, 3, 4, "1", "2", "3"]
    

    3、 利用对象的key值不能重复的特性来实现。(要注意对象的key数据类型,数值型都会自动转为字符串类型)

        let arr = [1,2,1,2,3,1,4,'1','2','1','3'];
        let obj = {};
        let newArr = [];
        arr.forEach(item => {
            if (!obj[item]) {
                obj[item] = 1;
                newArr.push(item);
            }
        });
        console.log(newArr); // [1, 2, 3, 4]
    

    相关文章

      网友评论

        本文标题:js中数组去重的三种方法

        本文链接:https://www.haomeiwen.com/subject/dvfawltx.html