Daniel Clifford 在 Google I/O 2012 上做了一个精彩的演讲“Breaking the JavaScript Speed Limit with V8”。在演讲中,他深入解释了13个简单的代码优化方法,可以让你的代码在 Chrome 的 V8 JavaScript 引擎编译/运行你的 JavaScript 代码更加快速。在演讲中,他解释了怎么优化,并且解释了原因。下面简明的列出了优化的要点:
-
在构造函数中初始化所有的对象
-
始终用相同的顺序初始化对象
-
尽量使用数字
-
为数组使用从0开始的连续的主键
-
不要提前分配大型数组(>64K),你应该在使用的过程中扩大数组
-
不要删除数组中的元素
-
不要装载没有初始化或者已经删除的元素
-
对于固定大小的数组,使用array literals初始化
-
在使用前分配正确的空间大小给小数组
-
不要在数值数组中存储非数值内容
-
尽量使用单一类型(monomorphic)而不是多类型(polymorphic)
-
不要使用 try{} catch{}
-
在优化后避免在方法中修隐藏的类