共计 787 个字符,预计需要花费 2 分钟才能阅读完成。
一。数组扁平化
概念: 是指将一个多维数组变为一个一维数组。
var arr=[1,[2,[3,[4,5]]],6];
==>[1, 2, 3, 4, 5, 6]
办法一:arr.flat(Infinity);
办法二:JSON.parse("["+JSON.stringify(arr).replace(/\[|]/g,"")+"]")
办法三:const arrCon=[];
const fn=arr=>{for(let i=0;i<arr.length;i++){if(Array.isArray(arr[i])){fn(arr[i]);
}
else{arrCon.push(arr[i]);
};
};
fn(arr);
有不懂 flat() 小伙伴们能够点击 flat()
二。数组去重
var arr=[1,1,2,2,4,4,null,null];
==>[1,2,4,null]
办法一:Arry.from(new Set(arr));
办法二: 双层 for 循环
function FFOR(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;
};
办法三:filter()+indexOf()
function ffor(arr){return arr.filter(item,index,arr){return arr.indexOf(item,0)===index;
}
};
办法四:indexOf
function FFOR(arr){const arrCon=[];
for(let i=0;i<arr.length;i++){if(arrCon.indexOf(arr[i])===-1){arrCon.push(arr[i])
}
}
return arrCon
}
正文完
发表至: javascript
2021-01-27