数组对象的合并,并去重
var arr =[{
fromeid:"10",
fromeavater:"http://www.zhiyioa.com/public/static/imgs/avatar.jpg",
content:"嘿嘿",
toavater:"http://www.zhiyioa.com/public/static/imgs/avatar.jpg",
toid:"2",
tousername:"前端2",
type:"friend"
},{
fromeid:"10",
fromeavater:"http://www.zhiyioa.com/public/static/imgs/avatar.jpg",
content:"哈哈哈",
toavater:"http://www.zhiyioa.com/public/static/imgs/avatar.jpg",
toid:"5",
tousername:"张三",
type:"friend"
}]
var data = [{
fromid:"2",
count:"5"
}]
// 数组去重
function arrayremovl(arr,data){
var arraydata = [];
for(let i = 0; i < arr.length; i++){
for(let j = 0; j < data.length; j++){
if(arr[i].fromid === data[j].toid){
arraydata.push({
toid : arr[i].toid,
tousername : arr[i].tousername,
type : arr[i].type,
toavatar : arr[i].toavater,
content : arr[i].content,
count : data[j].count
})
}
}
}
let hash = {};
const newArr = arraydata.reduceRight((item, next) => {
hash[next.toid] ? '' : hash[next.toid] = true && item.push(next);
return item
}, []);
return newArr
}
console.log(JSON.stringify(arrayremovl(arr,data)))