js数组去重的几种方法

数组去重
01
var arr=[1,3,4,2,3,4,6,6,66,33,4,5]
function remove1(arr){
for(var i=0; i<arr.length-1; i++){
for(var j=i+1; j<arr.length; j++){
if(arr[i]==arr[j]){
arr.splice(j,i);
j--;
}
}
}
return arr;
}
arr2=remove1(arr);
console.log(arr2);
02
var ar=[1,23,1,1,1,23,4,5,1,23,4,5]
console.log(ar);
function rep(arr){
for(var i=0;i<arr.length; i++){
if(arr.indexOf(arr[i]) !=i){
arr.splice(i,1);
i--;
}
}
return arr;
}
var a1=rep(ar);
console.log(a1);
03
var arr=["apple","banana","orange","pear","peach"]
var r=arr.filter(function(element,index,self){//element 元素 index 索引
return self.indexOf(element)==index;
});
console.log(r);
04
var arr=[1,2,3,4,5,1,2,3,4,44,55,66,44,33,55]
function rep(arr){
var ret=[];
for(var i=0; i<arr.length; i++){
if(arr.indexOf(arr[i])==i){
ret.push(arr[i]);
}
}
return ret
}
arr2= rep(arr);
console.log(arr2);
 
05
var arr=[1,2,3,4,5,1,2,3,4,44,55,66,44,33,55]
var o={}
var new_arr=[];
for(var i=0 ;i<arr.length; i++){
var k=arr[i];
if(!o[k]){
o[k]=true;
new_arr.push(k);
}
}
console.log(new_arr);
 
 
原文地址:https://www.cnblogs.com/bjyx/p/11993306.html