多维数组扁平化es6
时间: 2023-11-03 12:06:00 浏览: 97
多维数组
可以使用ES6的展开运算符和递归来扁平化多维数组,示例如下:
```javascript
const flatten = arr => [].concat(...arr.map(item => Array.isArray(item) ? flatten(item) : item));
const arr = [1, [2, [3, 4], 5], 6];
const flattenedArr = flatten(arr);
console.log(flattenedArr); // [1, 2, 3, 4, 5, 6]
```
在这个示例中,`flatten`函数接受一个数组作为参数并返回一个扁平化后的数组。`[].concat(...arr.map(item => Array.isArray(item) ? flatten(item) : item))` 表示将原数组 `arr` 中每个元素都进行遍历,如果当前元素是数组,则递归调用 `flatten` 函数,否则直接将元素插入到新数组中。
使用这种方法可以轻松地扁平化多维数组,不需要使用循环或者其他复杂的方法。
阅读全文