美文网首页
14JavaScript数组对象去重的方法

14JavaScript数组对象去重的方法

作者: 个人不完美 | 来源:发表于2018-11-14 22:27 被阅读0次

    JavaScript数组对象去重方法

    方法一:
    采用对象访问属性的方法,判断属性值是否存在,如果不存在就添加。

    var arr = [{
                key: '01',
                value: '乐乐'
            }, {
                key: '02',
                value: '博博'
            }, {
                key: '03',
                value: '淘淘'
            }, {
                key: '04',
                value: '哈哈'
            }, {
                key: '01',
                value: '乐乐'
            }];
            //  方法1:利用对象访问属性的方法,判断对象中是否存在key
            var result = [];
            var obj = {};
            for (var i = 0; i < arr.length; i++) {
                if (!obj[arr[i].key]) {
                    result.push(arr[i]);
                    obj[arr[i].key] = true;
                }
            }
            console.log(result); 
    //输出结果:
    [{key: "01", value: "乐乐"},{key: "02", value: "博博"},{key: "03", value: "淘淘"},{key: "04", value: "哈哈"}]
    
    //  方法2:利用reduce方法遍历数组,reduce第一个参数是遍历需要执行的函数,第二个参数是item的初始值
            var obj = {};
            arr = arr.reduce(function (item, next) {
                obj[next.key] ? '' : obj[next.key] = true && item.push(next);
                return item;
            }, []);
            console.log(arr);
    输出结果:
     [{key: "01", value: "乐乐"},{key: "02", value: "博博"},{key: "03", value: "淘淘"},{key: "04", value: "哈哈"}]
    
    

    相关文章

      网友评论

          本文标题:14JavaScript数组对象去重的方法

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