@Oleg_F

Как выровнять длину массивов в массиве?

Добрый день.
Ребята, подскажите пожалуйста, как выровнять длину массивов внутри массива
пример, есть массив
arr = [[1,2,3],
      [1,2,3,4,5],
      [1,2]]

нужно получить
arr2 =[[1,2,3, '',''],
      [1,2,3,4,5],
      [1,2,'','','']]
Т.е. в конец "коротких" массивов добавить пустое значение (именно добавить а не просто поменять значение length)
  • Вопрос задан
  • 159 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
Собрать новый массив:

const newArr = arr.map(function(n) {
  return [ ...n, ...Array(this - n.length).fill('') ];
}, Math.max(...arr.map(n => n.length)));

Обновить существующий:

const max = arr.reduce((max, { length: n }) => max > n ? max : n, 0);
arr.forEach(n => n.push(...Array(max - n.length).fill('')));
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
30 апр. 2024, в 23:39
3000 руб./за проект
30 апр. 2024, в 23:32
1500 руб./за проект
30 апр. 2024, в 22:44
500 руб./в час