【发布时间】:2020-06-02 06:17:20
【问题描述】:
我有一个 SPA 应用程序,在 chrome 中运行良好,没有内存泄漏。
但是,IE11 (Windows 10) 每 15 分钟崩溃一次。
请不要告诉我 IE11 已被弃用。我的公司支持 IE11,我们的客户正在使用 IE11。
我知道 IFrame 会导致 IE11 上的内存泄漏。
我听说 GIF 在 IE11 上也会导致内存泄漏,是真的吗?
根据您的经验:
- 哪些原因可能导致 IE11 出现内存泄漏?
- 如何避免这些内存泄漏?
- 有没有很好的有效方法,在不中断用户体验的情况下每隔 x 分钟“释放”IE 上的内存泄漏?
我想在这里收集所有可能导致 IE11 内存泄漏的原因。
【问题讨论】:
-
遗憾的是我的公司仍然支持 IE11。
-
所有拥有大客户(如银行)的公司都支持IE11。他们付出了很多,并希望你成为最好的。
-
@JonathanStellwag 您确实是正确的。回答这个问题:错误众多且无限。祝你好运。
-
@MegiBenNun 这个问题很重要,您将无法得到可靠的答案。不同 JS 引擎的细微差别,以及专门针对 Chrome 的 V8 引擎进行的优化和改进,以避免许多内存泄漏问题,而且每一个都是一个难以掌握的概念。一些经验法则是要小心多个作用域共享的变量(9 隐式或非隐式),并且在持有 DOM 引用时要小心。此外,如果您没有注意到 Chrome 中的内存泄漏,也不足为奇。
-
希望你不要觉得受到了我的人身攻击。我无意射杀信使。我只是永远支持废弃技术的反对者。我理解你的立场、你的问题和你提出的建议,但恐怕这只是徒劳的。我猜 IE 的代码已经有十多年没有维护了,而微软只是勉强维持它的生命。 IE 最大的技术优势之一是对第 3 方 ActiveX 组件的支持。金融部门严重依赖此类组件,但它们也会在浏览器中造成很多不稳定因素。
标签: javascript memory-leaks internet-explorer-11