【发布时间】:2018-12-07 10:24:04
【问题描述】:
我有以下对象数组:
var arr = [
{name: 'rajendra', last: 'arora'},
{name: 'rajendra', last: 'arora2'},
{name: 'rajendra1', last: 'arora22'},
{name: 'rajendra2', last: 'arora233'},
{name: 'rajendra2', last: 'arora23'},
{name: 'rajendra3', last: 'arora3'},
{name: 'rajendra3', last: 'arora3'},
{name: 'rajendr3', last: 'arora3'}
]
我想通过键名name 删除重复的对象。我的预期输出:
var arr = [
{name: 'rajendra', last: 'arora'},
{name: 'rajendra1', last: 'arora22'},
{name: 'rajendra2', last: 'arora233'},
{name: 'rajendra3', last: 'arora3'},
{name: 'rajendr3', last: 'arora3'}
]
我尝试过以下程序:
function _unique(arr) {
let uniqueArr = [];
for (var i = 0; i < arr.length; i++) {
for(var j=i+1; j<arr.length; j++) {
if(arr[i].name.indexOf(arr[j].name) == -1) {
uniqueArr.push(arr[j])
}
}
}
// console.log(uniqueArr[0].name.indexOf("rajendra"))
return uniqueArr;
}
console.log(_unique(arr))
但它不起作用。
将不胜感激!
【问题讨论】:
标签: javascript arrays json loops object