在JavaScript中从数组中删除重复的对象
假设我们有一个像这样的对象数组-
const arr = [
{"title": "Assistant"},
{"month": "July"},
{"event": "Holiday"},
{"title": "Assistant"}
];我们需要编写一个包含一个这样的数组的JavaScript函数。然后,我们的函数应返回一个新数组,该数组包含原始数组中的所有对象,但重复的对象除外。
示例
为此的代码将是-
const arr = [
{"title": "Assistant"},
{"month": "July"},
{"event": "Holiday"},
{"title": "Assistant"}
];
const removeDuplicate = arr => {
const map = {};
for(let i = 0; i < arr.length; ){
const str = JSON.stringify(arr[i]);
if(map.hasOwnProperty(str)){
arr.splice(i, 1);
continue;
};
map[str] = true;
i++;
};
};
removeDuplicate(arr);
console.log(arr);输出结果
控制台中的输出-
[ { title: 'Assistant' }, { month: 'July' }, { event: 'Holiday' } ]