1. 程式人生 > >數組去重的三種方法

數組去重的三種方法

number -- gpo fun nbsp log num .so 去重

//1.遍歷數組法,通過indexOf檢索臨時新建的數組,檢索值為arr數組裏面的值,沒有則加入新建數組
var arr=[1,4,3,5,1,2,5,4,3,2,1,4,2,6];
var n=[];
for(var i=0;i<arr.length;i++){
if(n.indexOf(arr[i])==-1){
n.push(arr[i]);
}
n.sort(function sortNumber(a,b){return a - b});
}
alert(n);

//2.對象鍵值對方式,屬性名為arr[i],屬性值也為arr[i]
var arr=[1,4,3,5,1,2,5,4,3,2,1,4,2,6,‘上海‘,‘上海‘];
var obj={};
for(var i=arr.length-1;i>=0;i--){
if(obj[arr[i]]==arr[i]){ //對象值是數字,只能用[]
arr.splice(i,1);
}
obj[arr[i]]=arr[i];
}
alert(arr);

//3.排序後相鄰去除法

var arr=[1,4,3,5,1,2,5,4,3,2,1,4,2,6,‘上海‘,‘上海‘];
arr.sort(function sortNumber(a,b){return a - b});
var n=[arr[0]];
for(var i=1;i<arr.length;i++){
if(arr[i]!=n[n.length-1]){
n.push(arr[i]);
}
}
alert(n);

數組去重的三種方法