我正在学习JavaScript。我刚刚学会了while循环,并尝试做一些例子。
这是我的代码:
for (i=0; i<5; i++) {
console.log ("for loops " + i);
}
do {
console.log ("do once");
} while (i<8) {
console.log ("while loops " + i);
i++;
}
而且我期望下面的结果。
for loops 0
for loops 1
for loops 2
for loops 3
for loops 4
do once
while loops 5
while loops 6
while loops 7
但是,不幸的是,我的浏览器陷入了无限循环。为什么这个循环是无限的?
在JavaScript中,do-while循环具有以下语法:
do{
commands();
} while (logical statement);
所以您写道:
do {
console.log ("do once");
// missing increment
} while (i<8);
{ // these { } are not part of any loop, but just a scope block
console.log ("while loops " + i);
i++;
}
浏览器陷入了无限循环,因为在while循环内变量i没有增加。您应该尝试以下操作:
for (i=0; i<5; i++) {
console.log ("for loops " + i);
}
console.log ("do once");
do {
console.log ("while loops " + i);
i++;
} while (i<8);
希望有所帮助
for (i=0; i<5; i++) {
console.log ("for loops " + i);
}
do {
console.log ("do once");
} while (i<8)
{
console.log ("while loops " + i);
i++;
}
也许可以这样查看原因
<< [“问题”是解释程序会将while
视为do
]的一部分>