为了账号安全,请及时绑定邮箱和手机立即绑定

想问一下关于getNextElement这个函数的问题

想问一下关于getNextElement这个函数的问题

Beckybei 2015-08-27 10:39:05
function getNextElement(node){ if(node.nodeType == 1){ return node; } if(node.nextSibling){ return getNextElement(node.nextSibling); }return null;}第一个问题 当参数在第一个if里面如果为true执行完之后 还会不会去执行第二个if第二个问题  当我传入实参比如说a.nextSibling 那第一个if为false对吗?那是  a.nextSibling的节点  传入第二个if语句还是a.nextSibling传入这个if语句。谢谢!
查看完整描述

1 回答

已采纳
?
闹小志

TA贡献75条经验 获得超42个赞

一、第一个问题:当执行到return的时候证明这个函数已经结束,所以不会去执行第二个if。

二、第二个问题:很明显在参数这个问题上你有些混乱了。if是true还是false和你传的参数形式无关,是和条件有关的。不管你传的实参是a,还是a.nextSibling,在函数中都只是一个node而已。你传a,if中的判断就是a.nodeType==1,你传a.nextsibling,if中的判断就是a.nextSibling.nodeType==1;同理,当传的参数是a.nextSibling,那第二个if语句中的判断就是a.nextSibling.nextSibling。

查看完整回答
反对 回复 2015-08-27
  • 1 回答
  • 0 关注
  • 1787 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信