js移除子元素

javascript 复制代码
removeAllChild(parentId) {
  const parentNode = document.getElementById(parentId);
  if (parentNode) {
    parentNode.innerHTML = '';
  }
}

使用innerHTML属性将其设为空字符串,可以一次性清除该元素的所有子节点内容。但是需要注意的是,innerHTML会触发重排和重绘,如果是大量DOM操作,性能消耗可能较大。如果只需要删除子节点而不需要保留原有DOM树结构或者触发事件,这种方法更为简洁高效。

如果需要保持原有的DOM树结构或者关心性能,原始的while循环是一个更好的选择。若要优化原始循环,可以尝试使用childNodes迭代器配合for循环:

javascript 复制代码
removeAllChild(parentId) {
  const parentNode = document.getElementById(parentId);
  if (parentNode) {
    for (let child; (child = parentNode.firstChild);) {
      parentNode.removeChild(child);
    }
  }
}
相关推荐
Knock man10 分钟前
QML和C++交互
开发语言·c++·交互
好_快10 分钟前
Lodash源码阅读-baseMatchesProperty
前端·javascript·源码阅读
好_快12 分钟前
Lodash源码阅读-hasPath
前端·javascript·源码阅读
褚瑱琅13 分钟前
T-SQL语言的压力测试
开发语言·后端·golang
好_快14 分钟前
Lodash源码阅读-hasIn
前端·javascript·源码阅读
Jasmin Tin Wei18 分钟前
蓝桥杯 web 展开你的扇子(css3)
前端·css·css3
烁34718 分钟前
每日一题(小白)模拟娱乐篇14
java·开发语言·算法·娱乐·暴力
好_快19 分钟前
Lodash源码阅读-basePropertyDeep
前端·javascript·源码阅读
✿ ༺ ོIT技术༻19 分钟前
C++11:lambda表达式
开发语言·c++
嘵奇2 小时前
深入解析 Java 8 Function 接口:函数式编程的核心工具
java·开发语言