js数组去重有一下三种方法:
1、在原数组中,使用splice把数组中重复的元素删除,完成去重
var arr=[1,2,3,4,1,2,1,3,4,6,8,7,5,4,7,3];
for(var i=0 ; i<arr.length ; i++){
var item=arr[i];
for(var j=i+1 ; j<arr.length ; j++){
if(item===arr[j]){
arr.splice(j,1);
j--;
}
}
}
2、把原数组中不同的元素各挑选出一个,放入新数组中,完成去重
var arr=[1,2,3,4,1,2,1,3,4,6,8,7,5,4,7,3];
var arr1=[];
for(var i=0 ; i<arr.length ; i++){
var item=arr[i];
var bool=true;
for(var j=0 ; j<arr1.length ; j++){
if(arr1[j]===item){
bool=false;
break;
}
}
if(bool){
arr1.push(item);
}
}
3、使用indexOf在新数组中查找有无这个元素,如果得到-1,说明没有这个元素,把这个元素放入新数组中,循环完成去重
var arr=[1,2,3,4,1,2,1,3,4,6,8,7,5,4,7,3];
var arr1=[];
for(i=0 ; i<arr.length ; i++){
if(arr1.indexOf(arr[i])===-1){
arr1.push(arr[i]);
}
}