Этот вопрос закрыт для ответов, так как повторяет вопрос Как расширить первый подмассив в массиве значениями остальных подмассивов?
@partizzend

Как расширить и заполнить первый подмассив в массиве значениями остальных подмассивов?

Есть такой код:

let arr = [
  [
      [1, null, 1, 1],
      [2, 2, 2, 2],
      [3, 3, 3, 3]
  ],[
      [4, 4, 4, 4, 4 ,4],
      [5, 5, 5, 5],
      [6, 6, 6, 6, null],
      [7, 7, 7, 7],
      [8, 8]    
  ],[
      [9, 9, 9, 9],
      [10, 10, 10, 10],
      [11, 11, 11, 11, 11],
      [12, 12, 12, 12]   
  ],
];

let res = arr.reduce(function(accumulator, current) {
  current.forEach(function(item, i) {
    [].push.apply(accumulator[i] = accumulator[i] || [], [].concat(item.slice(accumulator[i].length)));                  
  }); 
  return accumulator;
}, []);

Первый подмассив расширяется на размер следующего подмассива, если тот больше. Результат такой:

let arr = [
  [1, null, 1, 1, 4, 4]
  [2, 2, 2, 2]
  [3, 3, 3, 3, null]
  [7, 7, 7, 7]
  [8, 8]
]

Как добиться такого же результата, но при этом null заполнять значениями следующего подмассива по совпадению индексов? Вот пример результата:

let arr = [
  [1, 4, 1, 1, 4, 4]
  [2, 2, 2, 2]
  [3, 3, 3, 3, 11]
  [7, 7, 7, 7]
  [8, 8]
]
  • Вопрос задан
  • 100 просмотров
Ваш ответ на вопрос

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

Потому что уже есть похожий вопрос.
Похожие вопросы