Open damiss opened 6 years ago
var arr = [1, [2, [3, 4]]]; function flatten(arr) { while (arr.some(item => Array.isArray(item))) { arr = [].concat(...arr); } return arr; } console.log(flatten(arr)) [1, 2, 3, 4]
ES6 写法 ...arr 扩展运算符一次只能展开一个嵌套 arr.som 中返回 arr 内的元素是否为数组, 如果是数组,则展开 while 判断 循环多次展开 最后输出[1,2,3,4]
ES6
...arr
arr.som
arr
while
[1,2,3,4]
ES6
写法...arr
扩展运算符一次只能展开一个嵌套arr.som
中返回arr
内的元素是否为数组, 如果是数组,则展开while
判断 循环多次展开 最后输出[1,2,3,4]