if(a){
}else if(a'){
}是因为条件互有包含,为了层层过滤,并且每一层都有逻辑且逻辑不一样
if(a1){
}
if(a2){
}则不是为了过滤,是有N种情况,条件往往是各自独立,出现一种情况不可能包含其它的情况。
if(a){
}else{
if(b1){..}
if(b2){...}
...
}则是更复杂的条件包含,首先条件是互相包含的,经过过滤之后又有一些条件是相互独立的。当然还可能出现过滤之后还需要过滤另一种条件或者对先前条件的更细致的过滤的情况也就是
if(a){
}else{
if(b1){}else if(b2){
}
}或者
if(a){
}else{
if(aa){
}else if(aaa){
}
if(b){}
}
个人理解,需要根据不同的逻辑情况采取不同的if嵌套,不能一概而论