Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | 1x 14x 2x 3x 7x 1x 6x 6x 15x 3x 12x 6x | // 根据指定深度递归地将所有子数组元素拼接到新的数组中 // n默认1 export function flat(arr, n) { return arr.flat(n) } // 全部扁平化 export function flat2(arr) { while(arr.some(item => Array.isArray(item))) { arr = [].concat(...arr); } return arr; } // 递归法 export function flat3(arr, deep) { if (deep === 0) { return arr } let ret = [] for (let i = 0 ; i < arr.length ; i ++){ if (Array.isArray(arr[i])) { ret.push(...flat3(arr[i], deep - 1)) } else { ret.push(arr[i]) } } return ret } |