var doLoop = ("This is a do loop ya'll");
var doLoopArray = [];
var doLoopCount = 1;
do (console.log(doLoop));
while(doLoopCount <= doLoop.length); {
console.log(doLoop(0, doLoopCount));
doLoopCount += 1;
}
我以为这个do循环会运行23次(doLoop字符串中的字符数然后停止,但它似乎是无限的。
最佳答案
问题是您在while
之后有代码体。这不是 [do-while
2 的地方。 !代码应该放在 do
block 中。
您的代码被解析为:
do{
(console.log(doLoop));
}
while(doLoopCount <= doLoop.length);
{
console.log(doLoop(0, doLoopCount));
doLoopCount += 1;
}
这就是为什么它是一个无限循环。它将 {}
中的代码视为 block ,而不是 do-while
结构的一部分。
您需要正确构建do-while
。应该是:
do{
console.log(doLoop);
console.log(doLoop(0, doLoopCount));
doLoopCount += 1;
} while(doLoopCount <= doLoop.length);
附言doLoop(0, doLoopCount)
不会起作用。 doLoop
是字符串,不是函数。
关于javascript - 为什么这个 do/while 循环会崩溃?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21759845/