有太多dom节点的Javascript性能问题?

前端之家收集整理的这篇文章主要介绍了有太多dom节点的Javascript性能问题?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在调试一个ajax聊天,只是无休止地用DOM元素填充页面.如果你有3个小时的聊天时间,你最终会知道有多少个DOM节点.

与极端DOM使用相关的问题是什么?

用户界面是否可能完全没有响应(特别是在Internet Explorer中)?

(与此问题相关的当然是解决方案,如果除了手动垃圾收集和删除dom节点之外还有其他任何解决方案.)

解决方法

大多数现代浏览器应该能够很好地处理巨大的DOM树.而“大多数”通常不包括IE.

所以是的,你的浏览器可能会变得没有响应(因为它需要太多的RAM – >交换)或因为它的渲染器只是不堪重负.

标准解决方案是删除元素,比如在页面有10,000行的聊天之后.甚至100’000线也不应该成为一个大问题.但是我开始对比这大得多的数字感到不安(比如数百万行).

[编辑]另一个问题是内存泄漏.即使JS使用垃圾收集,如果你在代码中出错并在全局变量中保留对已删除DOM元素的引用(或者从全局变量引用对象),即使页面本身只包含少量内容,也会耗尽内存千元素.

猜你在找的HTML相关文章