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

我这为什么输出不出来?

我这为什么输出不出来?

正在回答

1 回答

function get_previousSibling(n){

    x=n.previousSibling

    while(x&&x.type!=1){

        x=x.previousSibling

    }

    return x;

改为 (x&& x.nodeType!=1)


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

慕粉3279124 提问者

非常感谢!
2016-06-06 回复 有任何疑惑可以回复我~
#2

十二月晴朗

while条件为什么不可以直接写成(x.nodeType!=1),不知道为什么要存在x&&,求解释,谢谢
2016-06-12 回复 有任何疑惑可以回复我~
#3

当爱随风 回复 十二月晴朗

&& 知道什么意思吗?是判断且的意思。就是要判断x和x.type是否都存在,这里的x就是x=n.previousSibling。就是判断前一个节点是否存在。
2016-06-12 回复 有任何疑惑可以回复我~
#4

十二月晴朗 回复 当爱随风

我原来的理解是既然x不存在,那x.type同时也不存在,所以只要判断一次x.type就行了;忽视了x=null这个情况。谢谢回复。
2016-06-13 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468045    人
  • 解答问题       21891    个

本课程从如何插入JS代码开始,带您进入网页动态交互世界

进入课程

我这为什么输出不出来?

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