我是JavaScript新手。我正在学习一些教程,并尝试制作一个代码,打印10到120的倍数。它不应打印100,并在120后显示消息。但由于某种原因,它不起作用。在运行代码时,页面上不显示任何内容,甚至不显示其他文本。请帮助!
var z = 10;
while (z<150){
if (z==100){
document.write("Cannot print 100!");
continue;
}
else if (z==130){
document.write("Cannot print after 120!");
break;
}
document.write(z+"<br>");
z+=10;
}
答案 0 :(得分:1)
1)你应该确保声明变量(var z = 0;)或者你会遇到一个&#34;未定义的变量&#34;错误。
2)while循环条件错误,因为你的循环永远不会用z < 100
打印110和120。您可以设置while(z < 130)
或while(true)
。
3)我还建议您将休息条件从z == 130
更改为z >= 130
,这样您就不会进入无限循环,以防您决定更改计数器增量。
4)最后,while
循环中常见的错误是将计数器增量放在错误的行中。在这种情况下,当z
达到100时,它将永远不会继续。
var z = 0;
while (z < 130){
z+=10;
if (z==100){
console.log("Cannot print 100!");
continue;
}
else if (z>=130){
console.log("Cannot print after 120!");
break;
}
console.log(z);
}
&#13;
答案 1 :(得分:0)
因为迭代器不会像在循环中所说的条件那样是90。使条件z <= 120。
或者
while(z <= 120) {
if (z==100) {
// cant print 100 z = z + 10;
continue;
}
// print z
z = z + 10;
}
答案 2 :(得分:0)
for(var i=10;i<=120;i+=10){
if(i===100){
continue;
}
document.write(i+'\n');
}
or with while loop
var j=10;
while(j<=120){
if(j===100){
j+=10;
continue;
}
document.write(j+'\n');
j+=10;
}