объединенные объекты массива в javascript

#javascript #arrays #object #ecmascript-6

#javascript #массивы #объект #ecmascript-6

Вопрос:

У меня есть массив, который включает в себя объекты, и каждый объект включает в себя объекты, я хочу преобразовать приведенный ниже массив

 [  
  { 
    0: { a: 1, b: 2 }, 
    1: { c: 3, d: 4 } 
  },
  { 
    0: { e: 5, f: 6 }, 
    1: { g: 7, h: 8 },
    2: { i: 9, j: 10 },
  } 
]

 

к этому массиву

 [  
  { a: 1, b: 2 }, 
  { c: 3, d: 4 }, 
  { e: 5, f: 6 }, 
  { g: 7, h: 8 },
  { i: 9, j: 10 }
]
 

введите описание изображения здесь

Комментарии:

1. ваши данные недопустимы для вложенных объектов без свойства.

2. Я прикрепил данные журнала консоли к своему вопросу @NinaScholz

3. Итак, у вас есть объекты со свойствами 0, 1, … и т.д., которые не являются массивами? Неплохо.

Ответ №1:

Вы могли бы получить плоский массив с присвоением объектов массиву.

 const
    data = [{ 0: { a: 1, b: 2 }, 1: { c: 3, d: 4 } }, { 0: { e: 5, f: 6 }, 1: { g: 7, h: 8 } }],
    flat = data.flatMap(o => Object.assign([], o));

console.log(flat); 
 .as-console-wrapper { max-height: 100% !important; top: 0; }