ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

javascript – NodeList数据未被删除

2019-07-27 04:35:34  阅读:191  来源: 互联网

标签:nodelist javascript xmlnodelist


我有一个有3个对象的数组对象.我想删除除第一个之外的所有对象.

这是我从XML获得的数据:

mrArr[0] = <Data>
                <G> "Val" = "5" </G>
           </Data>  
mrArr[1] = <Data>
                <G> "Val" = "6" </G>
           </Data>
mrArr[2] = <Data>
                <G> "Val" = "7" </G>
           </Data>

我创建了一个循环来尝试这样做,但它只删除一个元素.我的循环有什么问题?:

for(var i = 1; i < myArr.length; i++){
    myArr[i].remove();
}

它只删除一个元素.

解决方法:

由于您在每次迭代后都在改变数组,因此array.length会不断减少.因此,在您的示例中,循环仅执行一次,从而仅删除一个元素.

以下是您要实现的目标的实例.

var nodes = document.getElementsByTagName('div');

console.log('Before removal:', nodes);

while (nodes.length > 1) {
  var node = nodes[nodes.length - 1];
  node.parentNode.removeChild(node);
}

console.log('After removal:', nodes);
<div id="div-01">Here is div-01</div>
<div id="div-02">Here is div-02</div>
<div id="div-03">Here is div-03</div>

标签:nodelist,javascript,xmlnodelist
来源: https://codeday.me/bug/20190727/1550787.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有