我将如何减少这个数组以便合并每个对象中的对象 javascript 但不知道键值名称

How would I reduce this array so the objects in each are merged javascript but dont know key value names

我在一个数组中有一个数组,我想减少子数组,使它们成为其中的一个对象。这是生成数组的代码

const final = data.formEntryData.map((item) => {
    //console.log(Object.keys(item.data));
    let key = Object.values(item.data);
    let test = data.hmm.map((array) => {
      //console.log(array.arrayOrder);
      return { [array.name]: key[array.arrayOrder] };
    });
    return test;
  });

这里是数组中的数组

[
  [
    { 'Product Title Test': 'fdsafa' },
    { 'Product Description': 'ffdsafa' },
    { 'Product Image': 'fdasf' },
    { 'Product Price': undefined },
    { 'Live on Website Test two Three': undefined }
  ],
  [
    { 'Product Title Test': 'Roasted Beans' },
    { 'Product Description': 'For the Squire' },
    { 'Product Image': 'http://image.com' },
    { 'Product Price': undefined },
    { 'Live on Website Test two Three': undefined }
  ],
  [
    { 'Product Title Test': 'Shoes' },
    { 'Product Description': 'Worn' },
    { 'Product Image': 'google.com' },
    { 'Product Price': '100' },
    { 'Live on Website Test two Three': undefined }
  ],
  [
    { 'Product Title Test': 'fdsajkl' },
    { 'Product Description': 'klfdlsk' },
    { 'Product Image': 'flkdsjl' },
    { 'Product Price': 'flskj' },
    { 'Live on Website Test two Three': 'lkjfsdlk' }
  ],
  [
    { 'Product Title Test': 'shoes' },
    { 'Product Description': 'very good' },
    { 'Product Image': 'image.com' },
    { 'Product Price': '20' },
    { 'Live on Website Test two Three': 'yes' }
  ],
  [
    { 'Product Title Test': 'fdsaf' },
    { 'Product Description': 'fdsa' },
    { 'Product Image': 'fdsa' },
    { 'Product Price': 'fdsa' },
    { 'Live on Website Test two Three': 'fdsa' }
  ],
  [
    { 'Product Title Test': 'fdskj' },
    { 'Product Description': '291898868491092489' },
    { 'Product Image': 'fsdk' },
    { 'Product Price': '291898998629859848' },
    { 'Live on Website Test two Three': 'fsd;lk' }
  ],
  [
    { 'Product Title Test': 'fdsfa' },
    { 'Product Description': 'fdsaf' },
    { 'Product Image': 'fdsafa' },
    { 'Product Price': 'fdsaf' },
    { 'Live on Website Test two Three': 'fdasf' }
  ],
  [
    { 'Product Title Test': 'ds' },
    { 'Product Description': 'fdsa' },
    { 'Product Image': 'fdsa' },
    { 'Product Price': 'fdsa' },
    { 'Live on Website Test two Three': 'fdsa' }
  ],
  [
    { 'Product Title Test': 'fdsfds' },
    { 'Product Description': 'fdsfafds' },
    { 'Product Image': 'fdsafs' },
    { 'Product Price': 'fdsaf' },
    { 'Live on Website Test two Three': 'fdsaf' }
  ],
  [
    { 'Product Title Test': 'fdsfds' },
    { 'Product Description': 'fdsfafds' },
    { 'Product Image': 'fdsafs' },
    { 'Product Price': 'fdsaf' },
    { 'Live on Website Test two Three': 'fdsaf' }
  ],
  [
    { 'Product Title Test': 'fdsaf' },
    { 'Product Description': 'fdsafs' },
    { 'Product Image': 'fdasfd' },
    { 'Product Price': 'fdasfdsa' },
    { 'Live on Website Test two Three': 'fdasfd' }
  ]
]

我想要 merge the subarrays 所以一个看起来像这样

[
[...],
[
    { 'Product Title Test': 'fdsaf',
    'Product Description': 'fdsafs',
    'Product Image': 'fdasfd',
    'Product Price': 'fdasfdsa',
    'Live on Website Test two Three': 'fdasfd' }
  ]
,
[...]
]

我看过这样的reduce

var arr = [{key:"11", value:"1100"},{key:"22", value:"2200"}];
var object = final.reduce(
  (obj, item,) => Object.assign(obj, { [item.key]: item.value }), {});

console.log(object)

但是我不知道 item.key.item.value 名称,因为它们是在 map 函数中派生的。

任何帮助都会很棒。谢谢!

根据您提供的数组,您可以使用以下函数将嵌套数组合并到对象中,该函数使用 Object.entries 访问每个对象的属性。

function mergeInner(outer) {
  return outer.map(inner =>
    inner.reduce((merged, obj) => {
      Object.entries(obj).forEach(([k, v]) => {
        merged[k] = v;
      });
      return merged;
    }, {})
  );
}

产生:

[
  {
    'Product Title Test': 'fdsafa',
    'Product Description': 'ffdsafa',
    'Product Image': 'fdasf',
    'Product Price': undefined,
    'Live on Website Test two Three': undefined
  },
  {
    'Product Title Test': 'Roasted Beans',
    'Product Description': 'For the Squire',
    'Product Image': 'http://image.com',
    'Product Price': undefined,
    'Live on Website Test two Three': undefined
  },
  ...
}