如何实现数组去重?

xiaopengji
  • 631

arr=[{'name':'json'},{"idname":'tom'},{'idname':'bim'},{'name':'json'}];
function removearr(){
arr1=[];}
//不会往下做了;求教大神帮忙

回复
阅读 2.6k
4 个回答
all2005
  • 3.4k
✓ 已被采纳
 var result = {};var arr1 = [];
for(let i=0;i<arr.length;i++){

if(result[JSON.stringify(arr[i])]){
    
  }else{
    result[JSON.stringify(arr[i])] = true;
    arr1.push(arr[i]);
  }
}
 console.log(arr1);
`

不知underscore是否可以

使用js对象字面量key唯一的原则来解决数组去重:

 var obj= {},
     newArr=[],
     keyStr="";
for(var i=0,len=arr.length;i<len;i++){
    keyStr=JSON.stringify(arr[i]);
    if(!obj[keyStr]){
        obj[keyStr]=true;
        newArr.push(arr[i]);
    }
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏