JavaScript中数组去除重复的三种方法
废话不多说了,具体方法如下所示:
方法一:返回新数组每个位子类型没变
functionoutRepeat(a){
varhash=[],arr=[];
for(vari=0;i<a.length;i++){
hash[a[i]]!=null;
if(!hash[a[i]]){
arr.push(a[i]);
hash[a[i]]=true;
}
}
console.log(arr);
}
outRepeat([2,4,4,5,"a","a"]);//[2,4,5,"a"]
方法二:类似于法一,但本农觉着法一更易于理解
functionoutRepeat(a){
varhash=[],arr=[];
for(vari=0,elem;(elem=a[i])!=null;i++){
if(!hash[elem]){
arr.push(elem);
hash[elem]=true;
}
}
console.log(arr);
}
outRepeat([2,4,4,5,"a","a"]);//[2,4,5,"a"]
方法三:比前两个更易于理解但是返回的新数组每个位子的number类型变为string类型了!!关键时刻得处理
functionoutRepeat(a){
varhash=[],arr=[];
for(vari=0;i<a.length;i++){
hash[a[i]]=null;
}
for(varkeyinhash){
arr.push(key);
}
console.log(arr);
}
outRepeat([2,4,4,5,"a","a"]);//["2","4","5","a"]
以上是小编给大家介绍的JavaScript中数组去除重复的三种方法,希望对大家有所帮助!