javascript - 关于释放引用DOM对象内存的问题
高洛峰
高洛峰 2017-04-10 17:08:09
[JavaScript讨论组]

运行环境:OS X El Capitan 10.11.3
浏览器:Chrome 48.0.2564.116
我创建了10000个p元素,并且用了一个数组分别引用了这10000个对象。按理说当我把数组中的元素删除后应该释放对应引用对象的内存。然而并没有,只有当我把元素从DOM树中删除了对应的内存才真正的释放了。请问为什么会出现这种情况



    
        
        测试
    
    
        
        
        
        
        

下面是chrome内存分析图片:

创建节点前 此时内存占用3.5M

创建节点后 此时内存占用3.5M

引用节点后 此时内存占用4.0M (注意观察HTMLpElement)

解除引用后 此时内存占用3.9M

删除元素后 此时内存占用3.5M

补充:

  1. 我的操作步骤就是图片的顺序来的

  2. 从内存占用量来看,也是在删除元素以后内存用量才降了下来

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(1)
大家讲道理

一个节点被数组和节点树同时引用,释放了数组中的引用肯定不会释放节点所占的内存啊,因为这时候还有节点树的引用没有释放呢

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号