数组去重也是前端面试中很常见的一个问题,最近就对这个问题的解法进行了汇总,有需要的同学可以参考下
一、双层循环,比较相同的值,使用splice删除重复元素
function uniqueArr(arr){
if(!Array.isArray(arr)){
alert("type error");
return;
}
for(let i=0;i<arr.length;i++){
for(let j=i+1;j<arr.length;j++){
if(arr[i] === arr[j]){
arr.splice(j,1);
j--;
}
}
}
return arr;
}
二、indexOf去重
function uniqueArr(arr){
if(!Array.isArray(arr)){
alert("type error");
return;
}
var resArr=[];
for(let i=0;i<arr.length;i++){
if(resArr.indexOf(arr[i])<=-1){
resArr.push(arr[i])