当我尝试重新运行功能我的文件工作在第一轮循环就好了。这表明,当我尝试使用要匹配的值后,它显示了正确的值前一个循环的前值。如果我一次又一次地运行功能,它一直持有到以前生成的随机值的价值。
for (var i=0; i<9; i++)
{
var ranD = Math.floor(Math.random()*33);
if (mathStar.indexOf(ranD)== -1) {
mathStar.push(ranD);
item[i].innerHTML = mathStar[i];
}
else {
i--;
}
itemVal[i].value = mathStar[i];
}
使用const
环路内的let
var
和for
替代,以避免创建全局变量和--i
可以在那里i++
也是在foor
循环使用的代码中有意想不到的效果。
这是“MathStar的”第一次出现?
如果这是你使用了MathStar的首位,这意味着它被全球范围内创建这通常导致混乱。在这种情况下,看看this。
看着眼前这个,似乎你不重置“了MathStar的”价值。这样一来,你运行这个循环第n次的任何时间,值已添加到“了MathStar的”使用mathStar.push(...)也出现在值列表。