javascript合并多层级数组

版权声明:转载需注明来源 https://blog.csdn.net/Xiao_Spring/article/details/79262917

需求

返回一个数组的最低层级展现(遍历出数组中每个元素)

输入:一个数组
输出:修改后的单层数组

代码

const deepFlatten = arr=>[].concat(...arr.map(v=>Array.isArray(v)?deepFlatten(v) : v));

console.log('[1,[2],[3,[4]],[5,[6,[7,8]]]]合并后的数组为:'+deepFlatten([1,[2],[3,[4]],[5,[6,[7,8]]]]));

效果

这里写图片描述

一点想法

Array的map()方法会返回处理后的结果,搭配使用ES6中新的特性——扩展运算符…使递归更加高效、易懂。

Github地址

https://github.com/YuanshuaiHuang/JS-/blob/master/code/20180205

猜你喜欢

转载自blog.csdn.net/Xiao_Spring/article/details/79262917