数组、数组对象去重

1.reduce去重

语法:reduce(callback,initVal,allArr) initVal为初始值,allArr为原数组
举例:

let a = [1,2,3,2,5,2,6,3];
a.reduce((pre,cur)=>{
  if(pre.includes(cur)){
    return pre  
}else{
  return pre.concat(cur)
}
},[])
// [1, 2, 3, 5, 6]
let b =[
        {
          name:'红红',
          id:'121'
        },
        {
          name:'绿绿',
          id:'120'
        },{
          name:'红红',
          id:'121'
        },{
          name:'兰兰',
          id:'132'
        }
      ];
 let temp =[];
 b.reduce((pre,cur)=>{
   if(temp.includes(cur.id) == false){
      temp = temp.concat(cur.id);
      return pre.concat(cur)
   }
  return pre;
 }, [])
//结果:  [{name:'红红', id:'121' },{name:'绿绿',id:'120'},{name:'兰兰',id:'132'}];

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容