@partizzend

Как произвести слияние подмассивов в массиве?

Как лучше слить подмассивы многомерного массива, например:
let array = [
  [
    [[534, 75665], 232, 3232], 
    [54, 23234, 43456]
  ],
  [
    [346, "", 3456], 
    [33434, 45, 345]
  ],
  [
    [436, 346, 634], 
    [64334, 63464, 232]
  ]
];

Чтобы получился один массив, в данном случае - такой:
let array = [
    [[534, 75665, 346, 436], [232, "",  346], [3232, 3456, 634]], 
    [[54, 33434, 64334], [23234, 45, 63464], [43456, 345, 232]]
]

Желательно кроссбраузерный и понятный способ.
  • Вопрос задан
  • 148 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
array.reduce((acc, el) => {
  el.forEach((n, i) => {
    acc[i] = acc[i] || [];
    n.forEach((m, j) => (acc[i][j] = acc[i][j] || []).push(...[].concat(m)));
  });

  return acc;
}, [])
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
IonDen
@IonDen Куратор тега JavaScript
JavaScript developer. IonDen.com
Начните отсюда: Array.prototype.flat()
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Александрия Москва
от 200 000 до 250 000 руб.
Foodtronics Москва
от 100 000 до 200 000 руб.
от 5 500 до 6 500 usd.
20 авг. 2019, в 13:27
2000 руб./за проект
20 авг. 2019, в 13:14
8000 руб./за проект
20 авг. 2019, в 13:02
100000 руб./за проект