Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将嵌套的对象数组展平为数组?_Javascript_Arrays_Object - Fatal编程技术网

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));
控制台日志(结果)定义“最佳”