let data = [
   {id:1,name:'obj'},
   {id:3,name:'string'},
   {id:2,name:'arr'},
   {id:1,name:'num'}
 ];

let hash = {};

data = data.reduce(function(arr, current) {

    hash[current.id] ? '' : hash[current.id] = true && arr.push(current);

    return arr

}, []);

console.log(data)

对象数组根据某个属性去重

相关文章: