Javascript 通过映射数组创建展平数组

Javascript 通过映射数组创建展平数组,javascript,Javascript,我有以下数组: const aa = [ [1,2,3], [4,5,6], ... could be more here ]; 我想创建一个如下所示的数组: [1,2,3,4,5,6] 我目前有: const result = aa.map(a => [...a]); 结果是: [[1,2,3],[4,5,6]] 我知道如何使用以下方法展平阵列: var flattenedArray = [].concat(...result); 但我只是想知道我是否可以在map中

我有以下数组:

const aa = [
  [1,2,3],
  [4,5,6],
  ... could be more here
];
我想创建一个如下所示的数组:

[1,2,3,4,5,6]
我目前有:

const result = aa.map(a => [...a]);
结果是:

[[1,2,3],[4,5,6]]
我知道如何使用以下方法展平阵列:

var flattenedArray = [].concat(...result);
但我只是想知道我是否可以在
map
中做些不同的事情,以创建我想要的结果,而不需要额外的“展平”步骤?

执行
join
函数,然后使用
parse
函数解析结果。
const aa=[
[1, 2, 3],
[4, 5, 6]
];
log(JSON.parse(`[${aa.join()}]`)
。作为控制台包装器{
最大高度:100%!重要
}
如果您使用
reduce()
而不是
map()
,您可以一步完成此操作

const aa=[
[1,2,3],
[4,5,6]
];
const result=aa.reduce((r,e)=>[…r,…e],]);

console.log(result)
您可以进行检查并将映射的扁平阵列连接到新阵列

var flat=a=>[].concat(…(Array.isArray(a)?a.map(flat):[a]),
数组=[[1,2,3],[4,5,6,7,8]],
结果=平面(阵列);

控制台日志(结果)
返回字符串,而不是数组
.map()
转换数组中的每个元素。
.map()
前后的元素数量相同。您的
.map()
步骤本质上是一个不可操作的步骤;最终得到的是相同的嵌套数组。使用
map()
无法展平数组。它总是返回一个与原始数组长度相同的数组,而使用展平会生成一个不同长度的数组。Reduce是不必要的。这与此相同:
[].concat(…嵌套)
@greim-Nice-solution。