Javascript 如何将嵌套的对象数组展平为数组?
如何转换此复杂阵列:Javascript 如何将嵌套的对象数组展平为数组?,javascript,arrays,object,Javascript,Arrays,Object,如何转换此复杂阵列: [ [ { nums: [2,2] }, { nums: [2,3] }, { nums: [2,6] } ], [ { nums: [3,2] }, { nums: [3,4] }, { nums: [3,5] }, { nums: [3,9] } ], [ { nums: [4,2] }, { nums: [4,3] }, ] ] 在这个简化版本中 [
[
[
{ nums: [2,2] },
{ nums: [2,3] },
{ nums: [2,6] }
],
[
{ nums: [3,2] },
{ nums: [3,4] },
{ nums: [3,5] },
{ nums: [3,9] }
],
[
{ nums: [4,2] },
{ nums: [4,3] },
]
]
在这个简化版本中
[
[2,2],
[2,3],
[2,6],
[3,2],
[3,4],
[3,5],
[3,9],
[4,2],
[4,3]
]
可以使用展开阵列,然后将对象仅映射到其nums
字段,如下所示:
let数据=[
[
{nums:[2,2]},
{nums:[2,3]},
{nums:[2,6]}
],
[
{nums:[3,2]},
{nums:[3,4]},
{nums:[3,5]},
{nums:[3,9]}
],
[
{nums:[4,2]},
{nums:[4,3]},
]
];
log(data.flat().map(obj=>obj.nums))代码>您可以使用以下代码行转换它们:
let finalArray =[];
array.forEach((element)=>{
element.forEach((innerElement)=>{
finalArray.push(innerElement.nums)
}
})
您可以使用flatMap
展平数据:
var数组=[
[
{nums:[2,2]},
{nums:[2,3]},
{nums:[2,6]}
],
[
{nums:[3,2]},
{nums:[3,4]},
{nums:[3,5]},
{nums:[3,9]}
],
[
{nums:[4,2]},
{nums:[4,3]},
]
];
var result=array.flatMap(e=>e.map(p=>p.nums));
控制台日志(结果)代码>定义“最佳”