杂谈:什么是闭包?闭包会造成内存泄露?

为什么会流传闭包会导致内存泄露!因为IE浏览器早期的垃圾回收机制,有 bug。

IE浏览器中使用完闭包之后,依然回收不了闭包里面引用的变量。
在IE浏览器中,由于BOM和DOM中的对象是使用C++以COM对象的方式实现的,而COM对象的垃圾收集机制采用的是引用计数策略。在基于引用计数策略的垃圾回收机制中,如果两个对象之间形成了循环引用,那么这两个对象都无法被回收,但循环引用造成的内存泄露在本质上也不是闭包造成的。
如上可看出都是万恶 IE 的问题,不是闭包的问题,这也是流传闭包会导致内存泄露的主要原因。

https://segmentfault.com/a/1190000020631481

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。