电脑技术学习

javascript与内存

dn001

1. 致命的string

javascrip的string,类似.net 的string,大string操作费CPU,费内存.

替换方法:Array,但首先应该避免大string的各种操作.

2.外部变量

过多的外部变量会导致内存泄露成为必然.

替换方法:将外部变量包装成一个大对象,并在必要的时候设null,方便gc清除

3. 浏览器比较

在内存管理上从优到差:

IE, 内存使用率高,

当变量失效时,后申请的内存会覆盖原失效变量所使用的内存

支持手动gc(CollectGarbage())

Debug 内存泄露的工具Drip

firefox, 内存使用率中低

使函数内的变量,在作用域失效后,仍会占用内存,如需要内存时,不会自动覆盖原内存

在内存接近约120M时自动gc

safari, 内存使用率极低,刷新也不会清理内存