在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' } ]