0

我希望我的输出有 6 个随机数,但我的代码只显示 4 个数字,并且数字是相同的。

var x = Math.floor(Math.random()*41);

for(var i=0; i<7; i++){
    document.write(x + "</br>");
    i++;
}

有人可以帮忙吗?

4

5 回答 5

4

您需要.random()在循环内移动。另外,i++从您的循环中删除,因为这已经由for().

演示: jsFiddle

脚本:

for( var i=0; i<6; i++ ){
    var x = Math.floor(Math.random()*41);
    document.write(x + "</br>");
}
于 2013-03-01T01:23:42.453 回答
2

您不需要表单内的 i++,它是 6 而不是 7,您需要计算 for 循环内的随机数。

for(var i=0; i<6; i++){
    var x = Math.floor(Math.random()*41);
    document.write(x + "</br>");
}
于 2013-03-01T01:23:50.577 回答
1

你为什么要增加i两次?此外,如果所有数字都是随机的,则需要在循环内执行 Math 函数。

for(var i = 0; i < 6; i++) {
    document.write(Math.floor(Math.random()*41) + "<br>");
}
于 2013-03-01T01:23:57.920 回答
1

你不需要增加你的计数器两次。此外, random() 需要在您的循环内。

var x = Math.floor(Math.random()*41);

for(var i=0; i<6; i++){
    document.write(x + "</br>");
    x = Math.floor(Math.random()*41);
}
于 2013-03-01T01:24:03.160 回答
1

您在开始循环之前为 var x 分配了一个随机数,它在整个执行过程中保持不变

尝试将它放在循环中,也关于增加 i,你已经在 for 循环中执行它所以你不需要在循环中执行它

var x = Math.floor(Math.random()*41);//place it inside the loop

for(var i=0; i<7; i++){
    document.write(x + "</br>");
    i++;//remove this
}
于 2013-03-01T01:24:47.043 回答