课程
/前端开发
/JavaScript
/JavaScript进阶篇
for循环从0到子节点长度的值,就无法实现清楚,反过来从子节点长度的值到0,就可以实现,为什么呢?
2016-08-30
源自:JavaScript进阶篇 9-14
正在回答
function clearText() { var content=document.getElementById("content"); // 在此完成该函数 var a = content.childNodes; for (var i = 0; i < a.length; i++){ content.removeChild( content.childNodes[0] ); i--; } } </script>
1.用.length来限定for循环次数的时候,length的长度会变。数组里面的[i]也是变化的。2.空白文本的节点也是要考虑进去的。(这也是为什么例子里面是childNodes[1]而不是childNodes[0]的原因,因为[0]是空白节点)
慕丝4318731
慕用5675268 回复 慕丝4318731
慕丝4318731 回复 慕用5675268
不知道.....
举报
本课程从如何插入JS代码开始,带您进入网页动态交互世界
2 回答for(var i=content.childNodes.length-1;i>=0;i--)与for(i=0;i<content.childNodes.length;i++)区别
1 回答for(var i=content.childNodes.length-1;i>=0;i--){ var childNode=content.childNodes[i] content.removeChild(childNode) }
6 回答关于for循环for(var i=0;i<3;i++)的疑问
3 回答为什么循环设置为 for(i=0;i<=content.childNodes.length;i++)时。要点三次才能清除?
1 回答为什么是for(var i=x.childNodes.length-1;i>=0;i--)