首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >parentNode.removeChild()和remove()之间有什么区别?

parentNode.removeChild()和remove()之间有什么区别?
EN

Stack Overflow用户
提问于 2020-08-12 11:21:40
回答 2查看 273关注 0票数 0

我正在开发一个网站。有很多地方,我必须删除html元素。以前的主要贡献者常常这样做:

代码语言:javascript
运行
复制
var elem = document.getElementById('element');
elem.parentNode.removeChild(elem);

我在想他为什么不直接用

代码语言:javascript
运行
复制
elem.remove();

而不是。

我已经说到了,第一种方法不起作用,并返回了一个错误,但是第二种方法工作得很好。当然,我想在这个项目中坚持使用代码标准,所以我的第一次尝试就是使用parentNode.removeChild。不幸的是,我不能联系那个人,问为什么会这样做。

这两者有什么区别,我能安全地替换它们吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-08-12 11:25:50

从MDN来看,两者是等价的。.remove()受到jQuery的启发,并在很久之后才实现。不支持它。

如果您不需要IE,您可以安全地替换parentNode.removeChild,但是如果要转换代码,则replace方法使用parentNode.removeChild方法进行多填充.

票数 1
EN

Stack Overflow用户

发布于 2020-08-12 11:25:35

Source of the answer

删除与removeChild有何不同?

remove只需要一个对孩子的引用。removeChild需要对父级和子级的引用。结果是一致的。

另外,您可能会想,有什么方法可以确保该元素实际从内存中删除吗?

不是的。您只能取消引用,并希望存在一个垃圾收集器,它将检测未引用的对象,然后将其删除。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63375452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档