重新排列javascript对象结构

重新排列javascript对象结构,javascript,json,Javascript,Json,我正在查看具有以下结构的对象: [ [ { "attr1":"1", "attr2":"2", "attr3":"3" } ], [ { "attr1":"1", "attr2":"2", "attr3":"3" } ], [ { "attr1":"1", "attr2":"2", "attr3":"3" } ] ]

我正在查看具有以下结构的对象:

[
  [
    {
      "attr1":"1",
      "attr2":"2",
      "attr3":"3"
    }
  ],
  [
    {
      "attr1":"1",
      "attr2":"2",
      "attr3":"3"
    }
  ],
  [
    {
      "attr1":"1",
      "attr2":"2",
      "attr3":"3"
    }
  ]
]
[
  {
    "attr1":"1",
    "attr2":"2",
    "attr3":"3"
  },
  {
    "attr1":"1",
    "attr2":"2",
    "attr3":"3"
  },
  {
    "attr1":"1",
    "attr2":"2",
    "attr3":"3"
  }
]
只关注它的结构,我需要对这个对象做的就是重新安排它,使它最终具有以下结构:

[
  [
    {
      "attr1":"1",
      "attr2":"2",
      "attr3":"3"
    }
  ],
  [
    {
      "attr1":"1",
      "attr2":"2",
      "attr3":"3"
    }
  ],
  [
    {
      "attr1":"1",
      "attr2":"2",
      "attr3":"3"
    }
  ]
]
[
  {
    "attr1":"1",
    "attr2":"2",
    "attr3":"3"
  },
  {
    "attr1":"1",
    "attr2":"2",
    "attr3":"3"
  },
  {
    "attr1":"1",
    "attr2":"2",
    "attr3":"3"
  }
]
如何在纯Javascript或核心jQ库中实现这一点?

Arrayreduce可能会有所帮助

var arr=[{attr1:1,attr2:2,attr3:3}],{attr1:1,attr2:2,attr3:3}],{attr1:1,attr2:2,attr3:3}], res=arr.reducea,b=>a.concatb; console.logres 你可以用一个

var data=[{attr1:1,attr2:2,attr3:3}],{attr1:1,attr2:2,attr3:3}],{attr1:1,attr2:2,attr3:3}], 平面=[].concat…数据; 控制台。对数平面;
.作为控制台包装器{max height:100%!important;top:0;}因此,您只需要删除第二级数组。很容易完成

var old=[ [ { 1:1, 2:2, 表3:3 } ], [ { 1:1, 2:2, 表3:3 } ], [ { 1:1, 2:2, 表3:3 } ] ]; //Map循环遍历一个数组并返回一个新数组,该数组中填充了 //提供的回调函数返回。 var newArry=old.mapfunctionvalue{ //获取存储在第二级数组中的第一个对象,而不是数组本身 返回值[0]; };
console.lognewArry;所以你只想取每个内部数组的第一个元素?你可以只使用myArray.mapx=>x[0]。@ScottMarcus,第二个应该适用于较旧的javascript实现。你只需要数组中的一个项,它看起来不是很通用。@NinaScholz是的,但OP在谈到他处理的结构时说得很具体。