Javascript 当我将对象放入循环时,它们不会出现在屏幕上

Javascript 当我将对象放入循环时,它们不会出现在屏幕上,javascript,Javascript,昨天我开始使用javascript p5库。我的问题是,当我在draw()函数中手动写入对象时,它们会出现在屏幕上,一切正常,但当我将它们放入循环中时,它们不会出现 function draw() { object[0].show(); object[1].show(); object[2].show(); object[3].show(); } 这个很好用 for(var i = 0; i < objectsCreated; i++) { object[

昨天我开始使用javascript p5库。我的问题是,当我在draw()函数中手动写入对象时,它们会出现在屏幕上,一切正常,但当我将它们放入循环中时,它们不会出现

function draw() {
   object[0].show();
   object[1].show();
   object[2].show();
   object[3].show();
}
这个很好用

for(var i = 0; i < objectsCreated; i++) {
    object[i].show();
}

这是我用来显示它的函数。

当你在所有东西中循环时,你可能会失去这个的上下文。这不太可能是问题所在,但可能值得重构
this.show
,以便其行为在调用堆栈中更可预测

试试这个:

this.show=()=>{
填充(此颜色);
rect(this.x,this.y,this.sizex,this.sizey);

};

objectsCreated
当然是
4
,并且正在调用循环?请在您需要的for循环中提供一个值,使条件成为
I
@BrianShamblen仍然是一样的。@haribo您定义了
objectsCreated
的值吗?
this.show = function() {
    fill(this.color);
    rect(this.x, this.y, this.sizex, this.sizey);
}