为什么要var o=node呢?

为什么要var o=node呢?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕慕子 2022-02-27 10:00:24

同学你好,对于你的问题解答如下:

1、getElementPrevSibling方法中,去掉var o = node 这句的代码,直接使用形参node也是可以的,老师讲解的是另一种实现思路,为了讲解下一个方法做铺垫的,同学自己练习的时候,可以直接使用形参node实现效果。

2、getAllElementSibling方法中,因为获取参数node前后所有节点时,使用了两个while循环。第一个while循环中,有该变node的操作,如下:

http://img1.sycdn.imooc.com//climg/5ffa6a5e0950357406690313.jpg

如果该while中把node改变了,那么下一个while循环中的node就不再是传入的node了:

http://img1.sycdn.imooc.com//climg/5ffa6aa6094f2a5108600700.jpg

两个while循环中,应该都从传入的node开始,往前、往后判断。使用 var o = node;的目的就是保留传入的node,不会更改该node,这样第二个while循环才能正常使用传入的node。

祝学习愉快!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师