之前一直處理的是數組的元素去重,但是數組中元素為對象的情況下,去重又一點不一樣,利用reduce方法可以很快的就拿到去重之后的數組,而且在去重的過程中還可以對對象進行編輯重組等操作,非常便利
var arr = [{
"name": "Angus",
"age": "16"
}, {
"name": "Angus",
"age": "16"
}, {
"name": "Jay",
"age": "26"
}, {
"name": "Jay",
"age": "26"
}];
var hash = {};
arr = arr.reduce(function(item, next) {
hash[next.name] ? '' : hash[next.name] = true && item.push(next);
return item
}, [])
console.log(arr);