Javascript Do while循环仅在一次迭代后停止
我有一个do-while循环,它只在一次迭代后停止,尽管该条件多次出现错误结果。 另一件事——while语句后面的所有内容都不会执行。 代码很长,因此下面是测试条件的示例:Javascript Do while循环仅在一次迭代后停止,javascript,iteration,do-while,break,Javascript,Iteration,Do While,Break,我有一个do-while循环,它只在一次迭代后停止,尽管该条件多次出现错误结果。 另一件事——while语句后面的所有内容都不会执行。 代码很长,因此下面是测试条件的示例: do { let x = 0; let y = 3; for (let j = 0; j < 9; j++) { if(j%2==0){ x++; } } } while (x < y); do{ 设x=0; 设y=3; for(设j=0;j
do {
let x = 0;
let y = 3;
for (let j = 0; j < 9; j++) {
if(j%2==0){
x++;
}
}
} while (x < y);
do{
设x=0;
设y=3;
for(设j=0;j<9;j++){
如果(j%2==0){
x++;
}
}
}而(x
有人知道为什么吗?do语句中x和y的范围意味着它在while语句中不存在。但是您的代码正在循环多次
设x=0;
设y=3;
做{
对于(设j=0;j原因是x未定义。let有一个块作用域。并且您在do block中声明了x和y,该do block在块后没有作用域。如果您想在while条件下使用它们,请将它们放置在外部或将let更改为var
您将以一个错误结束,因此,代码在一段时间后不会执行。要检测错误,请使用try-catch将其包围
do{
设x=0;
设y=3;
for(设j=0;j<9;j++){
如果(j%2==0){
x++;
}
}
}while(x
我只会定义让在之外做
…或者,如果你坚持var
s。虽然在块外测试变量时在块中分配变量是有效的JavaScript,但一些编辑器会产生错误,除非你允许它…因此我会避免这种做法,并在两个街区都有通道。