7

JavaScript中是否有类似内存友好的脚本?我应该注意的某些原则?我问这个是因为我有一个站点,其中 a#div充满了大量数据,并且我使用原语执行此操作.innerHTML = i_hold_lots_of_data;我想知道 a是否与 C.innerHTML = '';中的 a 具有相同的效果free()

所以我的问题可以缩小到这个问题:在 JavaScript 中处理大字符串是否存在内存管理方面的最佳实践?

4

2 回答 2

2

如果您想深入了解您的内存配置文件,您应该使用 Google Chrome 控制台(选项卡配置文件)之类的工具。它显示了哪些对象使用了多少内存。

一般来说,您应该知道 javascript 变量是对内存中事物的引用,并且当不再引用它时(在不久的将来的某个时候),该内存将被释放。因此,如果您有大型物品,请确保仅在必要时握住它们。如果您只需要在一个地方使用某些东西,请确保它具有本地范围而不是使用全局变量。

于 2013-01-26T18:27:10.173 回答
0

正如我所看到的,Javascript 在现代浏览器中被编译成机器代码,带有 V8、Chakra 等引擎,我怀疑内存管理可能因引擎而异。

如果你想对你的代码运行内存检查,你可以使用 chrome 的泄漏查找器。 http://google-opensource.blogspot.de/2012/08/leak-finder-new-tool-for-javascript.html

我发现一篇文章对 Javascript 中的内存管理非常有用 http://coding.smashingmagazine.com/2012/11/05/writing-fast-memory-efficient-javascript/

于 2013-01-26T19:00:32.117 回答