JS 数组对象根据id去重
时间: 2024-01-27 19:12:39 浏览: 79
js中数组对象去重的两种方法
5星 · 资源好评率100%
JS 数组对象根据id去重可以通过以下方法实现:
1. 遍历数组,将每个对象的id作为键,对象本身作为值存入一个新的对象中,这样就可以去重了。
2. 将新对象中的值转换为数组即可。
以下是代码实现:
引用:
```
function deduplicate(arr) {
const map = {};
for (let i = 0; i < arr.length; i++) {
const item = arr[i];
if (!map[item.id]) {
map[item.id] = item;
}
}
return Object.values(map);
}
console.log(this.deduplicate(arr)) //['1', '2', '3', '5', '4']
```
引用:
```
const arr = [
{ id: 1, name: "数据1" },
{ id: 1, name: "数据2" },
{ id: 2, name: "数据3" },
{ id: 3, name: "数据4" },
{ id: 4, name: "数据5" },
{ id: 3, name: "数据6" },
{ id: 5, name: "数据7" }
];
function deduplicate(arr) {
const map = {};
for (let i = 0; i < arr.length; i++) {
const item = arr[i];
if (!map[item.id]) {
map[item.id] = item;
}
}
return Object.values(map);
}
console.log(deduplicate(arr));
```
引用:
```
const arr = ["1", "1", "2", "3", "5", "3", "1", "5", "4"];
function deduplicate(arr) {
const map = {};
for (let i = 0; i < arr.length; i++) {
const item = arr[i];
if (!map[item]) {
map[item] = item;
}
}
return Object.values(map);
}
console.log(deduplicate(arr));
```
阅读全文