Я пытаюсь решить эту проблему: Напишите функцию, которая разбивает массив (первый аргумент) на группы по длине размера (второй аргумент) и возвращает их как многомерный массив , Например:Невозможно прочитать свойство «push» неопределенного многомерного массива
chunk(['a', 'b', 'c', 'd'], 2)
должен вернуть
[['a'. 'b'], ['c', 'd']]
Мой код выглядит следующим образом:
function chunk(arr, size) {
var newArr = [[]];
for(i = 0; i < arr.length; i++) {
for(j = 0; j < size; j++) {
newArr[i].push(arr[i + j]);
}
}
return newArr;
}
Это дает ошибку: Не удается прочитать свойство 'толчок' в неопределенной. Почему это происходит и как я могу это исправить?
может кто-нибудь объяснить, почему есть перерыв на линии 5? – Andrew
Предположим, что 'size' = 3, но исходный' arr' состоит из 7 членов. Последний «кусок» будет содержать только 1 элемент - после этого не будет больше членов, чтобы заполнить оставшиеся 2 пятна в последнем фрагменте. Здесь происходит «перерыв». – Glorfindel