请教!为什么这样写是一个一个消除?

来源:9-14 删除节点removeChild()

利木

2017-01-25 17:08

 for(var i=0;i<content.childNodes.length;i++){

content.removeChild(content.childNodes[i]);     

  }

写成这样,就要点好几下才能消除。

但是如果写成下面这样,就一下能消除:

   for(var i=0;i<content.childNodes.length;i++){

    var chnode=content.childNodes[i];

    content.removeChild(chnode);  

  }

看了一下区别仅仅是第二个定义了变量。请问为什么定义变量就不一样了?

写回答 关注

1回答

  • BlueBlueSkyZ
    2017-01-25 22:26:15

    大兄弟,你确定两个不一样。。?应该说都是从前往后删的,然后都会出现问题,我试了一下确实如此。因为length是会动态改变的,如果从前往后删的会判断条件会一直自动变小,所以一次性是删不完的。。

JavaScript进阶篇

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

468195 学习 · 21891 问题

查看课程

相似问题