例如,如果我有一个这样的if语句:
if(...) {
//some code
if(...) {
//somecode
}
}
与以下内容有何不同:
if(..) {
//code
}
if(...) {
//cod
}
答案 0 :(得分:3)
第一个是嵌套if ie。
statemen1t
仅当condition1
和condition2
都为真时才会执行statement2
,只要condition1
为真,就会执行condition1
。执行如下:
if
。如果是,则控制流进入第一个condition2
的范围。if
,如果为true,则控制流进入第二个statement1
范围并执行statement1
。if
。 if
内不再有statement2
个,因此会执行condition1
。if(condition1) {
statement1 ;
}
if(condition2) {
statement2 ;
}
本身为假,则不执行任何操作。第二个是两个ifs,彼此不相关,即
condition1
如果statement1
为真,则执行condition2
,如果statement2
为真,则执行if
。无论如何,这两个if
都没有关系。为此使用else
- if(condition1) {
statement1 ;
}
else
if(condition2) {
statement2 ;
}
阶梯,即
condition2
在这种情况下,只有在condition1
为假时才会检查.wrapper { position: relative; }
#tags { position: absolute; top: 0; left: 0; }
.article { margin-top: 140px; } /*margin amount to be the height of aqua div*/
。
答案 1 :(得分:1)
没有缩进可能很容易被误解,这就是缩进如此重要的原因。基本上第一个代码是:
if (conditionA) {
// code A
if (conditionB) {
// code B
}
}
如您所见,只有当conditionA
和conditionB
都为true
时,才会执行“代码B”。
在第二个示例中,两个if
语句位于同一级别:
if (conditionA) {
// code A
}
if (conditionB) {
// code B
}
因此,“代码B”只需要conditionB
为true
才能进行评估。