数组对象去重
准备数据
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);