一.非es6方法:
//去重方法
function filterSame(arrays){
var obj = {};
var newArrays= [];
for(var i =0; i<arrays.length; i++){
if(!obj[arrays[i].id]){
arrays.push(arrays[i]);
obj[arrays[i].id] = true;
}
}
return newArrays;
}
//调用
var arrays=[{id:1,name:Lily},{id:2,name:Bily}]
filterSame(arrays);
二、es6方法
function filterSame(){
var obj = {};
arrays = arrays.reduce(function(item, next) {
obj[next.id] ? '' : obj[next.id] = true && item.push(next);
return item;
}, []);
}
//调用
var arrays=[{id:1,name:Lily},{id:2,name:Bily}];
filterSame(arrays);
旧项目不支持es6的,升级也麻烦的可以用原生的,支持es6语法就简单多了。