数组对象去重

2021-04-07 19:27

阅读:396

标签: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


评论


亲,登录后才可以留言!