JavaScript删除节点的方法

(图片来源网络,侵删)
在JavaScript中,我们可以使用多种方法来删除HTML文档中的节点,以下是一些常用的方法:
1、使用removeChild()方法
removeChild()方法是DOM(文档对象模型)中的一个方法,用于从其父节点中删除一个子节点,它接受一个参数,即要删除的子节点。

(图片来源网络,侵删)
示例代码:
// 获取要删除的子节点
var childNode = document.getElementById("child");
// 获取父节点
var parentNode = childNode.parentNode;
// 删除子节点
parentNode.removeChild(childNode);
2、使用remove()方法
remove()方法是Node对象的一个方法,用于从其父节点中删除该节点,它不接受任何参数。

(图片来源网络,侵删)
示例代码:
// 获取要删除的节点
var node = document.getElementById("node");
// 删除节点
node.remove();
3、使用innerHTML属性
innerHTML属性是Element对象的一个属性,用于获取或设置元素的内部HTML内容,通过将innerHTML设置为空字符串,我们可以删除元素及其所有子节点。
示例代码:
// 获取要删除的元素
var element = document.getElementById("element");
// 删除元素及其所有子节点
element.innerHTML = "";
4、使用replaceChild()方法
replaceChild()方法是DOM中的一个方法,用于替换一个子节点,它接受两个参数,即要替换的新节点和要被替换的旧节点,如果我们想要删除一个节点,我们可以将新节点设置为空字符串。
示例代码:
// 获取要替换的旧节点和新节点(空字符串)
var oldNode = document.getElementById("old");
var newNode = document.createTextNode("");
// 获取父节点
var parentNode = oldNode.parentNode;
// 替换旧节点为新节点(空字符串),从而删除旧节点
parentNode.replaceChild(newNode, oldNode);
5、使用documentFragment和appendChild()/removeChild()方法
我们可以创建一个documentFragment,将要删除的节点添加到其中,然后将其从文档中移除,这样可以避免重新渲染整个页面。
示例代码:
// 创建documentFragment并添加要删除的节点
var fragment = document.createDocumentFragment();
fragment.appendChild(document.getElementById("node"));
// 将documentFragment从文档中移除,从而删除节点及其所有子节点
document.body.appendChild(fragment); // 将fragment添加到文档中,使其可见(可选)
document.body.removeChild(fragment); // 从文档中移除fragment,从而删除节点及其所有子节点(包括之前添加到fragment中的子节点)
以上是JavaScript中常用的几种删除节点的方法,根据实际需求和场景,我们可以选择最适合的方法来删除HTML文档中的节点,需要注意的是,不同的方法可能对性能和页面渲染产生不同的影响,因此在实际应用中需要权衡利弊。