我已经调用了.push
函数,但是什么也没有添加到我的数组中。这是我的代码:
function setup() {
createCanvas(400, 400);
}
let digits = [];
function binaryConverter(num){
this.num = num;
for(let i = 0; this.num === 0; i++){
digits.push(this.num % 2);
this.num = floor(this.num/=2);
}
}
function draw() {
background(220);
binaryConverter(13);
print(digits);
}
我希望程序输出数字,但是它输出空数组。
答案 0 :(得分:0)
for loop中的第二条语句定义了执行循环代码块所必须满足的条件。只要条件满足,循环的代码块就会执行
this.num
的初始值为num
(在您的情况下为13)。因此,条件this.num === 0
永远不会满足,并且循环代码块中的语句也永远不会执行。
在for循环中更改条件语句:
for(let i = 0; this.num === 0; i++)
for(let i = 0; this.num != 0; i++)