Deep flattens an array.
Use recursion.
Use Array.prototype.concat()
with an empty array ([]
) and the spread operator (...
) to flatten an array.
Recursively flatten each element that is an array.
代码片段
const deepFlatten = arr => [].concat(...arr.map(v => (Array.isArray(v) ? deepFlatten(v) : v)));
使用样例
deepFlatten([1, [2], [[3], 4], 5]); // [1, 2, 3, 4, 5]