gpt4 book ai didi

javascript - 如何在 Ajax 请求后释放内存

转载 作者:行者123 更新时间:2023-11-30 09:07:50 25 4
gpt4 key购买 nike

我的网站上有一个非常基本的 ajax 幻灯片。在每次滚动时,新图像和响应内容都会不断增加浏览器使用的内存量。

我已经完成研究并尝试了所有建议以根据每个新请求重置 XHR 对象,但这绝对没有任何帮助。

幻灯片是基本的,但可能包含数百张幻灯片。我希望用户能够在不使浏览器崩溃的情况下无限期地浏览幻灯片。这可能吗?

谢谢,布莱恩

最佳答案

增加内存使用是正常的。毕竟,您每次都在加载更多数据——来自 AJAX 响应的 HTML,以及正在显示的图像。除非您使用的是 Adob​​e Pagemill 生成的 HTML,否则那只会是几百字节的 HTML/文本。图像将占用最多的空间。一切都被塞进浏览器的缓存中。

由于您没有直接对 DOM 做任何花哨的事情(构建子树等等),只是重复替换一大块 HTML,最终浏览器将进行清理并丢弃一些未使用/旧/陈旧的图像内存/缓存中的数据并回收部分内存。

现在,如果您正在执行一些高度复杂的 DOM 操作并动态生成大量新节点,并且到处泄漏一些节点,那么您就会遇到内存问题,因为这些泄漏的节点最终会掩埋浏览器。

但是,仅仅通过加载图片来增加内存使用量是没有什么好担心的,这就像一个正常的延长的冲浪 session ,除了你只是加载一些新图片。

关于javascript - 如何在 Ajax 请求后释放内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3418034/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com