@mrzittack

Непонятки с циклом на js?

Вообщем решил немного попрактиковаться на js и создать простенькую игру по гайду гоши дударя, но в процессе написания кода я никак не вдупляю в одну вещь, а именно цикл for.

Длина массива у меня равна 0, тогда почему этот цикл вообще работает, если i не меньше длинны массива, а равна ему

var pipe =[]

pipe[0] = {
x: canvas2.width,
y: 0
}

var xPos = 10;
var yPos = 150;
var dy = 1;
pipeDown.onload = function draw(){
ctx2.drawImage(bg,0,0);
for (var i = 0; i < pipe.length; i++) {
ctx2.drawImage(pipeUp,pipe[i].x, pipe[i].y);
ctx2.drawImage(pipeDown,pipe[i].x, pipe[i].y + pipeUp.height + gap);
pipe[i].x--;
if(pipe[i].x == 100){
pipe.push({
x : canvas2.width,
y : Math.floor(Math.random() * pipeUp.height) - pipeUp.height
});
}
}
ctx2.drawImage(bird,xPos,yPos);
ctx2.drawImage(fg,0, canvas2.height - fg.height);
requestAnimationFrame(draw);
yPos+=dy;
}
  • Вопрос задан
  • 92 просмотра
Пригласить эксперта
Ответы на вопрос 1
iCoderXXI
@iCoderXXI
React.JS/FrontEnd engineer
Ну в pipe есть 1 элемент, стало быть длина = 1, стало быть цикл 1 раз крутанётся...
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
29 нояб. 2024, в 09:43
100000 руб./за проект
29 нояб. 2024, в 07:44
20000 руб./за проект