解构多维数组—some()+…
提到解构数组,一般会想到遍历或循环.但是当数组层数过多时性能消耗会比较大,可以使用ES6的…拓展运算符+数组api的some()来解构.
let arr = [1,2,3,[4,5],[6,[7,8]]];
function reArr(arr){
let newArr = [].concat(...arr);
return newArr.some(Array.isArray) ? reArr(newArr) : newArr;
}
let newArr =reArr(arr);
console.log(newArr); // [1, 2, 3, 4, 5, 6, 7, 8]