2019-04-14
描述
对数组中的多层嵌套进行平铺。
提示
- 需要使用递归。
- 使用展开操作符
...
展开一个数组。 - 使用
Array.prototype.concat()
把空数组[]
和展开的数组合并后创建一个新数组。 - 递归展开数组中的每一个元素。
代码
const deepFlatten = arr => [].concat(...arr.map(v => (Array.isArray(v) ? deepFlatten(v) : v)));
示例
把多层嵌套的数组展开为一个一维数组:
deepFlatten([1, [2], [[3], 4], 5]); // [1,2,3,4,5]
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于