Нехватка элементов в массиве при создании таблицы

Пусть у нас дан вот такой одномерный массив:

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

Пусть теперь мы хотим сделать из него двухмерный массив с 4-мя элементами в каждом подмассиве. После применения функции convertArr у нас получится следующий двухмерный массив:

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

Как вы видите, в последнему подмассиву не хватило элементов и в нем оказалось только число 9. Если передать такой двухмерный массив в функцию createTableByArr, то она создаст неправильную таблицу - в последнем ряду таблицы будет не четыре td, а один.

Для решения проблемы сделаем функцию normalizeArr, которая первый параметром будет принимать двухмерный массив, вторым параметром - количество элементов в подмассиве, а третьим - заполнитель.

Своим результатом функция должна возвращать "нормализованный" массив: массив, последний элемент которого будет содержать нужное количество элементов. Если этих элементов изначально было меньше, чем нужно функция будет добавлять нужное количество элементов-заполнителей.

Смотрите пример работы функции:

let arr = [[1, 2, 3, 4], [5, 6, 7, 8], [9]]; // выведет [[1, 2, 3, 4], [5, 6, 7, 8], [9, '-', '-', '-']]: console.log(normalizeArr(arr, 4, '-'));

Тогда код для создания таблицы из одномерного массива станет выглядеть так:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; let cols = 4; let twoDimArr = convertArr(arr, cols); let normalTwoDimArr = normalizeArr(twoDimArr, cols, ''); let table = createTableByArr(normalTwoDimArr);

Реализуйте описанную функцию normalizeArr. Потестируйте ее работу.

Дан следующий массив:

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

С помощью комбинаций функций createTableByArr, normalizeArr и convertArr создайте из приведенного массива таблицу размером 5 колонок. Добавьте созданную таблицу в какой-нибудь див.