1.開關jquery
function norepeat(arr){數組
var newarr = [];it
newarr.push(arr[0);//將去重前的數組的第一項放到新數組中io
for(var i = 1;i<arr.length;i++){//去重前的數組console
var bstop = true;//開關,沒有重複function
for(var j = 0;j<newarr.length-1;j++){遍歷
if(arr[i]==newarr[j]){//將去重前的數組與新數組中的每一項進行比較方法
bstop = false;top
break;//若是有重複,終止這次遍歷filter
}
}
if(bstop){
newarr.push(arr[i]);
}
}
return newarr;
}
2.spice
function norepeat(arr){
for(var i = 0;i<arr.length;i++){
for(var j = i+1;j<arr.length;j++){
if(arr[i]==arr[j]){
arr.splice(j,1)
j--;
}
}
}
return arr;
}
3.indexof
function norepeat(arr){
var newarr = [];
for(var i = 0;i<arr.length;i++){
if(newarr.indexof(arr[i])==-1){
newarr.push(arr[i]);
}
}
return newarr;
}
4.filter+indexof
function norepeat(arr){
var newarr = arr.filter(function(v,i,array){
return arr.indexof(v)== i;
});
return arr;
}
5.正則
for(var i = 0;i<arr.length;i++){
for(var j = i+1;j<arr.length;j++){
if(arr[i]==arr[j]){
arr[j] = '*';
}
}
}
console.log(arr.join('&').replace(/\*/g,'').split('&').filter(function(v,i,array){return v}));
6.數組新方法set
var arr = [];
var s1 = new Set(arr);
console.log(Array.from(s1));
7.jquery 的$.unique
$.unique([1,2,3,4,51,3,2,3])