javascript - 是否自动为 children 清理 div 上的内存?

标签 javascript html memory

我有一个 html div,它下面有大约 6 个 div。当我删除那个 div 上的一个 Child 时,其他 div 是否会被取消分配,或者我必须先删除它们? div 是动态创建的。

 var window = document.createElement( 'div' ); 

然后我向其中添加更多元素。后来在某个时候我想删除这些 div,我在顶层 div 上使用 removeElement 来这样做。这会导致浏览器出现内存问题吗?如果是这样,我认为我必须首先移除每个 child 是正确的。

最佳答案

非常简短的回答是......是的(因为您不必手动执行)和否(因为它不一定按照您假设的方式完成),但不要担心。

到目前为止,您的 html 代码是从实际的内存管理中抽象出来的,这甚至不是一个有效的问题。

当元素从 DOM 中移除时,它们的所有子节点也将被移除。添加一个元素不会直接分配内存块——它会向 DOM 添加一个节点,然后由渲染过程使用。节点的大小通常很小。

当删除节点时,浏览器可能不会释放内存,因为 DOM 本身仍然处于事件状态,但您不必担心。您唯一真正关心的是同时呈现/操作的元素数量。

关于javascript - 是否自动为 children 清理 div 上的内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16170349/

相关文章:

javascript - Firefox OS 模拟器中的 Uint8Array/Uint16Array 转换是否中断?

javascript - 带有图像的命运之轮(无 Canvas )

iOS游戏大小问题

c++ - 退出码3(不是我的返回值,找源码)

linux - Teradata SLES Linux 服务器上的内存使用情况

javascript - 为什么我不能在 Jquery 中执行 console.log

javascript - 如何将值从 javascript 传递到嵌入式 flex 对象?

javascript - 如何将x轴滚动条设置为可操作的

PHP 小部件使用类选择器而不是 <tag> 来构建菜单

javascript - md-自动完成,错误 : Cannot read property 'success' of undefined