通过使用JavaScript“未定义”(变量),我们可以释放系统内存
By Using JavaScript "Undefined" (Variable) we can Free system memory?
我正在为一个互联网速度测试应用程序工作。 该网站正在使用JavaScript计算互联网速度。下载较大的文件时 250Mb+ 浏览器崩溃。(铬,歌剧,火狐(。它将所有测试文件保存到 DOM。我看到浏览器的内存使用量在测试100Mbps +速度连接时疯狂上升。
我的问题:有没有办法限制浏览器的内存使用?或者使用浏览器 DOM 有任何限制?使用文件后,将其设置为"未定义"实际上会从系统内存中删除该项目吗?
下载 250Mb + 数据后,我看到了此浏览器崩溃问题(下一个文件 250 Mb,因此 512mb 保存在 DOM 中(
您不需要特定数据来测试网络速度。重要的是数据的大小(此处为 250 MB(。此外,为了确保您正在测试实际速度,还有一个额外的要求,即不使用琐碎的数据(即,不使用全零或快速重复的模式(。
您可以生成 1 MB 的随机数据(或任何不会使应用程序崩溃的数据量(并发送 250 次:服务器仍然可以看到 250mb 的数据,并且您不需要存储任何内容(除了那 1 MB(。
这是有效的,因为您正在测试速度:您无需检查发送的数据是否与接收的数据相同,因为底层TCP/IP协议已经保证了数据的完整性。
关于释放javascript内存:你可以做的是给变量分配另一个值(var = null;
(,并检查你没有持有对该变量的任何其他引用。然后它有资格被垃圾回收:解释器可能会也可能不会释放它,这取决于它的实现——除此之外,你无法控制它。
相关文章:
- 为什么“;未定义的“;在JavaScript中结束循环
- 要求未定义JS回调参数
- 如何检查管道中未定义的项目
- TypeError:无法读取属性'推'未定义的JavaScript
- $window.ga在AngularJS事件中未定义
- 未捕获的TypeError无法读取未定义的属性socialsharing
- 为什么grunt contrib connect的中间件选项的第三个参数是未定义的
- 无法获取属性'selectedIndex'的未定义引用或null引用
- 如何消除代码中的未定义和其他问题
- 未捕获的ReferenceError:$未定义
- this.router在AngularJS 2中未定义
- 未捕获的类型错误:无法读取属性'删除'的未定义
- 节点fs.stat名称未定义
- 尝试在PHP中回显输入文本时出现未定义的索引错误
- Jquery未定义函数正在停止其他操作
- 我们可以在初始化variable Angular JS时将变量值声明为未定义吗
- 通过使用JavaScript“未定义”(变量),我们可以释放系统内存
- 如果我们初始化为null,angular.js@local-scope属性将显示为未定义
- 为什么我们使用typeof XMLHttpRequest !="undefined"?什么是未定义的
- & # 39;节点# 39;是未定义的.我们如何在应用程序级别定义