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

9-11访问兄弟节点。这里为什么用while循环,而不用条件按判断?

  1. 在下愚钝,这段代码的‘函数部分’看了好久才看明白,也不知道理解的对不对,我说一下我理解的意思,请前辈指点:大意就是。

    首先:如果第一个<li>的兄弟标签的nodetype值不等于1,也就是不是标签,那么在选定下一个兄弟标签。我这么理解的对不对。

  2. 为什么用while循环语句,而不用条件判断语句if

http://img1.sycdn.imooc.com//5739b1090001c25607010856.jpg

 

正在回答

2 回答

你理解的都对  就像你自己说的   while 是个循环  而 if  只是判断一次而已 

while(x.nodetype!=1){

x=x.nextSibling

}  

return  x ;

这句的意思是 先判断 x的属性值 如果不等于1  就把x.nextSibling赋值给x  然后循环  再去判断 赋值后的x的属性值

一直循环下  直到当x的属性值等于1时  然后才跳出循环  返回x的值。


if(x.nodetype!=1){

x=x.nextSibling

}  

return  x ;

这里  if语句 只能判断一次  x.nodetype是不是等于1   并不会有循环的效果

知道区别了吧、、


4 回复 有任何疑惑可以回复我~
#1

Tang小溪 提问者

非常感谢!讲的很明白,很透彻!谢谢兄弟
2016-05-16 回复 有任何疑惑可以回复我~

还是不太懂啊


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

9-11访问兄弟节点。这里为什么用while循环,而不用条件按判断?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信