我有以下情况:
IF condition THEN
IF condition THEN
sequence 1
ELSE
break //?
ENDIF
ELSE
sequence 3
ENDIF
Run Code Online (Sandbox Code Playgroud)
break语句的结果是什么?它是否打破了外部的if语句?因为这是我真正需要的.
Dan*_*wis 126
如果标记if语句,则可以使用break.
breakme: if (condition) {
// Do stuff
if (condition2){
// do stuff
} else {
break breakme;
}
// Do more stuff
}
Run Code Online (Sandbox Code Playgroud)
您甚至可以标记和破坏普通块.
breakme: {
// Do stuff
if (condition){
// do stuff
} else {
break breakme;
}
// Do more stuff
}
Run Code Online (Sandbox Code Playgroud)
虽然它不是常用的模式,但可能会让人感到困惑,并且可能不会被编译器优化.使用函数并返回或更好地安排条件可能更好.
( function() {
// Do stuff
if ( condition1 ) {
// Do stuff
} else {
return;
}
// Do other stuff
}() );
Run Code Online (Sandbox Code Playgroud)
hvg*_*des 45
不,它没有.break是for循环,而不是ifs.
嵌套if语句很糟糕.如果可以避免它们,请避免使用它们.你可以重写代码吗?
if (c1 && c2) {
//sequence 1
} else if (c3 && c2) {
// sequence 3
}
Run Code Online (Sandbox Code Playgroud)
这样你就不需要任何控制逻辑来"突破"循环.
| 归档时间: |
|
| 查看次数: |
100490 次 |
| 最近记录: |