如何在JavaScript中合并(展平)数组的数组?
大家好!我是JavaScript新手,在处理嵌套数组时遇到了问题。
我有一个数组,里面包含几个其他数组:
```javascript
const nestedArrays = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
```
我需要把它变成一个扁平数组,得到:
```javascript
[1, 2, 3, 4, 5, 6, 7, 8, 9]
```
我尝试使用 `concat()` 方法,但它没有按预期工作:
```javascript
const result = nestedArrays.concat();
// 结果:[[1, 2, 3], [4, 5, 6], [7, 8, 9]] — 没有变化
```
我尝试写循环,但搞糊涂了。另外,我有一个更复杂的情况:数组可能不仅包含数字,还包含其他数组(深层嵌套),例如:
```javascript
const deepNested = [1, [2, [3, [4, 5]]], 6];
```
如何正确地将这样的数组“展平”成一行?现代JavaScript中是否有内置方法?还是需要自己写函数?