码迷,mamicode.com
首页 > 编程语言 > 详细

数组去重方法

时间:2016-10-06 12:51:16      阅读:220      评论:0      收藏:0      [点我收藏+]

标签:

方法一:
function clearArrEqual(arr){
var Arr=[];
var stopFor;
for(var i in arr){
stopFor=true;
    for(var a=0;a<Arr.length;a++){
if(arr[i]===Arr[a]){//这里的对比,分两种,一种是不是很严格的对比,另一种是非常严格的对比,详细请参考“==”和“===”的区别
           stopFor=false;
        break;
    }
   }
    if(stopFor){
  Arr.push(arr[i]);
    }
  }
}
var Arr1=[12,‘yingfu‘,‘abcdefg‘,‘12‘,588,‘abcdefg‘,‘yingfu‘,‘12‘,588];

console.log(Arr1);
console.log(clearArrEqual(Arr1));

方法二:(此方法有个bug,数组中出现数值和字符串值相等情况会认为相同,例如1,“1”)

function clearArrEq(arr){
    var hash=[];
for(var i=0;i<arr.length;i++){
if(hash[arr[i]]==undefined){
hash[arr[i]]=1;
}else{
hash[arr[i]]++;
}
}
console.log(hash);
arr2=[];
for(var k in hash){
arr2.push(k)
}
console.log(arr2);
    }
}

var Arr1=[12,‘yingfu‘,‘abcdefg‘,‘12‘,588,‘abcdefg‘,‘yingfu‘,‘12‘,588];
clearArrEq(Arr1); //["12", "588", "yingfu", "abcdefg"]
 

数组去重方法

标签:

原文地址:http://www.cnblogs.com/l742314100/p/5933588.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!