Javascript 而循环在P5.js的函数中不起作用

Javascript 而循环在P5.js的函数中不起作用,javascript,p5.js,Javascript,P5.js,我对python很有经验,但对java完全陌生。我使用的是p5,我想建立一个简单的函数,根据用户输入的数字,它可以画出那么多的圆。我不知道为什么它不起作用 var numProton; function setup() { numProton = createInput(); numProton.changed(nucleus); createCanvas(600, 500); background(255); } function draw() { noStro

我对python很有经验,但对java完全陌生。我使用的是p5,我想建立一个简单的函数,根据用户输入的数字,它可以画出那么多的圆。我不知道为什么它不起作用

var numProton;

function setup() {
  numProton = createInput();
  numProton.changed(nucleus);
  createCanvas(600, 500);
  background(255);  
}

function draw() {
    noStroke()
    textSize(15);
    fill(0, 0, 0);
    text('^ # of Protons', 25, 30);
    text('^ # of Neutrons', 150, 30);
    text('^ # of Electrons', 275, 30);
}

function nucleus() {
    var i = 0;
    while(i <= numProton.value) {
        ellipse(300, 250, 10);
        i++;
    }
}
可能是一个非常简单的错误,但我仍然感谢您的帮助。

为什么不使用for循环,它具有相同的确切用途:

for (var i = 0; i <= numProton.value; i++) {
    ellipse(300, 250, 10);
}
为什么不使用for循环,它有相同的用途:

for (var i = 0; i <= numProton.value; i++) {
    ellipse(300, 250, 10);
}
numProton.value是否可能是具有的函数调用

请参见此处

是否可能将numProton.value设为具有的函数调用


看看这里

现在到底发生了什么?它到底画了什么圆吗?console.log+numProton.value-开发者工具控制台中的输出是什么?从哪里调用nucleus?函数draw将在p5.js中反复调用,因此如果您不从那里调用nucleus,该函数将不会执行。在nucleus中放置一个控制台。记录“test”以查看它是否被调用。现在到底发生了什么?它到底画了什么圆吗?console.log+numProton.value-开发者工具控制台中的输出是什么?从哪里调用nucleus?函数draw将在p5.js中反复调用,因此如果您不从那里调用nucleus,该函数将不会执行。在nucleus中放置一个控制台。记录“test”以查看它是否被调用。如果while循环不起作用,为什么for循环会起作用?@JaromandaX如果while循环出现问题怎么办?在JavaScript中,类似这样的事情发生在我身上是出于奇怪的原因,即使我从文档中复制和粘贴,它也无法工作,所以我寻找另一种方法!逻辑是一致的。如果你能展示这样一个简单的for循环,当一个等价的while循环失败时,我会印象深刻。像这样的事情发生在我身上是因为奇怪的原因——我想你记不起来了吧?@JaromandaX不,我只是从来没有发现过,我用一个变通方法解决了这个问题。这在我身上发生过好几次。如果while循环不起作用,为什么for循环会起作用?@JaromandaX如果while循环有问题怎么办?在JavaScript中,类似这样的事情发生在我身上是出于奇怪的原因,即使我从文档中复制和粘贴,它也无法工作,所以我寻找另一种方法!逻辑是一致的。如果你能展示这样一个简单的for循环,当一个等价的while循环失败时,我会印象深刻。像这样的事情发生在我身上是因为奇怪的原因——我想你记不起来了吧?@JaromandaX不,我只是从来没有发现过,我用一个变通方法解决了这个问题。这在我身上发生过好几次。