码迷,mamicode.com
首页 > 编程语言 > 详细

数组对象去重

时间:2020-07-26 23:23:50      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:data   number   fun   amp   ===   each   turn   code   find   

数组对象去重

准备数据

var arr = [{
                "CompanySerial": "123",
                "id": "1",
                "number": 2,
            },
            {
                "CompanySerial": "456",
                "id": "1",
                "number": 2
            }, {
                "CompanySerial": "789",
                "id": "3",
                "number": 1
            }
        ]

处理数据

一:通过findIndex()查找的方式去重

let arr3 = []
        arr.forEach((item, index) => {
            let b = arr3.findIndex(o => o.id === item.id) == -1;
            if (b) {
                arr3.push({
                    CompanySerial: item.CompanySerial,
                    id: item.id,
                    number: item.number

                })
            }
        })
        console.log(arr3);

2:通过对象hasOwnProperty方法()

hasOwnProperty() 是判断对象实例的是否具有某个属性。

function fn(arr) {
            const res = {};
            return arr.filter(a => {
                return !res.hasOwnProperty(a.id) && (res[a.id]=1);
            })
        }
        var myData = fn(arr);
        console.log(myData);

数组对象去重

标签:data   number   fun   amp   ===   each   turn   code   find   

原文地址:https://www.cnblogs.com/wgy0528/p/13382739.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!