js 去重

1.方法一:

 function removeDuplicatedItem1(ar){
var ret =[];
for(var i = 0,j = ar.length ;i<j;i++){
if(ret.indexOf(ar[i]) === -1){
ret.push(ar[i]);
}
}
document.write(ret);
}

var arr = [1,2,3,2,32,34,2,3,4,3,4,24,2,42,42,42,43,43,34,4,3];
removeDuplicatedItem1(arr)

2.方法二:
function removeDuplicatedItem2(ar){
var tmp = {},ret = [];
for(var i = 0,j=ar.length;i<j;i++){
if(!tmp[ar[i]]){
tmp[ar[i]] = 1;
ret.push(ar[i]);
}
}
document.write(ret);
}
var arr = [1,2,3,2,32,34,2,3,4,3,4,24,2,42,42,42,43,43,34,4,3];
removeDuplicatedItem2(arr);

3.方法三:
function  removeDuplicatedItem3(ar){
var ret = [];
ar.forEach(function(e,i,ar){
if(ar.indexOf(e) === i){
ret.push(e);
}
});
document.write(ret);
}
var arr = [1,2,3,2,32,34,2,3,4,3,4,24,2,42,42,42,43,43,34,4,3];
removeDuplicatedItem3(arr);


4.方法四:
function  removeDuplicatedItem4(ar){
var ret = [],end;
ar.sort();//当做字符串进行排序,如果大小排序还要重新调用别的方法;
end = ar[0];
ret.push(ar[0]);
for(var i = 1;i<ar.length;i++){
if(ar[i] != end){
ret.push(ar[i]);
end = ar[i];
}
}
document.write(ret);
}
var arr = [1,2,3,2,32,34,2,3,4,3,4,24,2,42,42,42,43,43,34,4,3];
removeDuplicatedItem4(arr);





posted @ 2016-11-30 15:37  jishuzhainv  阅读(186)  评论(0编辑  收藏  举报