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