//数组去重函数
var arr=[3,3,4,13,7,8,8,9];
function uniqueArray1(arr){
var tmp=[];
for(let i=0,len=arr.length;i<len;i++){
let flag=true;
for(let j=0,len=tmp.length;j<len;j++){
if(arr[i]==tmp[j]){
flag=false;
break;
}
}
if(flag){
tmp[tmp.length]=arr[i];
}
}
return tmp;
}
//0.029052734375 ms
//利用哈希表实现去重
function uniqueArray2(arr){
var tmp=[],hash={};
for(let i=0;arr[i]!=null;i++){
if(!hash[arr[i]]){
tmp.push(arr[i]);
hash[arr[i]]=true;
}
}
return tmp;
}
//0.012939453125 ms
//利用map去重
function uniqueArray3(arr){
var tmp=[]; //定义空数组
arr.map(function(x){ //用 map 遍历数组
if(tmp.indexOf(x)==-1){ //如果当前值没有存在空数组中
tmp.push(x); //追加到空数组中
}
}
);
return tmp;
}
//0.05224609375 ms
console.log(uniqueArray1(arr));