日期:2014-05-16  浏览次数:20356 次

一个关于if语句的问题
function getNextElement(node){
if(node.nodeType == 1){
return node;
}
if(node.nextSibling){
return getNextElement(node.nextSibling);
}
return null;
}
这个函数返回的是哪个值?两个if语句都会执行吗?

------解决方案--------------------
这个函数返回 一个nodeType = 1的node,或者null.

如果给入的node nodeType != 1,那么两个if都会执行,不然在第一个if就返回node了.
------解决方案--------------------
return 后,下面的就不执行了
------解决方案--------------------
根据条件顺序执行,有return的话就返回停止