Сейчас я пытаюсь создать массив объектов с номерами, превышающими 0
, и когда число равно 0
, массив заканчивается, когда число превышает 0
, должен быть создан новый массив (поэтому функция должна возвращать массив массивов, разбитых, когда в середине 0.
Ввод и желаемый вывод:
input = [1,2,3,4,0,0,0,9,9,0,0]
output = [[1,2,3,4][9,9]]
Моя функция (пока):
function group(Array) {
let allArray = []
let runGroup = new Array()
Array.forEach(function(runtimeI,index) {
if (runtimeI > 0)
{
runGroup[i] = new Array()
runGroup[i].push(runtimeI)
}
}
)
allArray.push(runGroup[i])
}
array = [10,0,0,1,1,2,0,0,15,0,0,0,5,5,5,]
console.log(group(array))
Созданная мною функция выдает ошибку: array is not a constructor
рабочий пример функции (которая создает необходимую мне структуру)
var squares = new Array();
for(var i = 0; i <= 8; i++)
{
squares[i] = new Array();
for(var j = (i * 20) + 1; j <= 20 * i + 20; j++)
if (squares[i] == null)
squares[i] = j;
else
squares[i].push(j);
}
console.log(squares)
поэтому я предполагаю, что мой вопрос, есть ли что-то для циклов, которые forEach не может сделать? Есть ли другой способ, которым я должен выполнить это?