我想在Javascript中退出if if block。如果我返回,那么它不会检查下一个if条件。我该怎么做?
if ($('#id1').length > 0) {
if(yester_energy == "NaN" || yester_energy == 0){
//break from #id1
}
else{
//something
}
$("#abc").html(somthing)
}
if ($('#id2').length > 0) {
if(yester_energy == "NaN" || yester_energy == 0){
//break from #id2
}
else{
//something
}
}
答案 0 :(得分:2)
if(isNaN(yester_energy) || yester_energy == 0)
之后的所有代码都在else
块中,因此如果您的数据与此if
匹配,则不会执行该代码。你不需要任何其他东西。
另外,如果要检查变量是否得到NaN
值,请使用isNaN()
函数。你无法比较它。
答案 1 :(得分:2)
甚至晚于聚会...通常在这种情况下,我将if
和do...while
的组合使用如下...
if ( condition ) do {
// processing
if ( exit_condition ) break;
// more processing...
} while ( false );
因此,当遇到break
时,它将应用于do...while
循环,并且在while
之后继续处理,从而有效地突破了外部if
语句。 ..
答案 2 :(得分:0)
使用switch语句,
switch(n)
{
case 1:
execute code block 1
break;
case 2:
execute code block 2
break;
default:
code to be executed if n is different from case 1 and 2
}
答案 3 :(得分:0)
聚会晚了,但是对于那些被搜索到的人来说,您可以使用名为labeling
的东西。这不是一个好习惯,但是在极少数情况下可以应用。基本上,您可以为要中断的if
语句分配名称。并从指定名称的任何地方调用语句break
。
代码示例:
my_if: if (condition) {
// do stuff
break my_if;
// not do stuff
}
在您的特定情况下:
id1: if ($('#id1').length > 0) {
if(yester_energy == "NaN" || yester_energy == 0){
break id1;
}else{
//something
}
$("#abc").html(somthing)
}
有关labeling
的更多信息,请参见:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/label#Syntax