Dit*_*itR 4 break nested-loops
while(valid){
for(loop through associative array){
if(!valid){
break;
}
}
}
Run Code Online (Sandbox Code Playgroud)
我试图找到一种方法来从 if 语句中跳出 while 循环。到目前为止,最好的方法似乎是在 Javascript 中不存在的 goto 方法。导致 if 语句跳出它嵌套的两个循环的最佳方法是什么?在此先感谢您的帮助!
创建一个变量作为传递给外部循环的标志是一种方法,但是,JavaScript 提供了标签,我认为这使代码更易于阅读并减少了代码量:
outerloop:
while(valid){
for(loop through associative array){
if(!valid){
break outerloop;
}
}
}
Run Code Online (Sandbox Code Playgroud)
下面是在标签上一些信息在这里向下滚动到标签的部分。你甚至可以继续到外循环。
根据您的条件,应该很容易将 for 循环的迭代器设置为会破坏它的东西,并将 while 条件设置为 false。例如,
while(someBoolean){
for(var i = 0; i < size; i++){
if(wantToBreak){
i = size;
someBoolean = false;
}else{
//Do Stuff
}
}
}
Run Code Online (Sandbox Code Playgroud)