JavaScriptパフォーマンスを上げるシンプルな13の最適化

JavaScript
最適化するとここまで早くなるのかと感心した@HIROCASTERでございませう。

Google I/O 2012 のなかで発表されたV8エンジン向けのJavaScript最適化の話です。
15.5秒ほどかかっていた処理が0.04秒まで高速化しています。

  1. Initialize all object members in constructor functions
  2. Always initialize object members in the same order
  3. Prefer numeric values that can be represented as 31-bit signed integers
  4. Use contiguous keys starting at 0 for Arrays
  5. Don’t pre-allocate large Arrays (>64K elements) to their maximum size, instead grow as you go
  6. Don’t delete elements in arrays, especially numeric arrays
  7. Don’t load uninitialized or deleted elements
  8. Initialize using array literals for small fixed-sized arrays
  9. Preallocate small arrays to correct size before using them
  10. Don’t store non-numeric values (objects) in numeric arrays
  11. Prefer monomorphic over polymorphic wherever possible
  12. Don’t use try {} catch {} blocks
  13. Avoid hidden class changes in functions after they are optimized

ちょっとした書き方を変えるだけで、実現できることはありますね。


動画は長いので、スライドの方が理解するのが早いかと。

元記事はこちら → 13 JavaScript Performance Tips » Jon Fox bookmark_counts

パーフェクトJavaScript (PERFECT SERIES 4)

パーフェクトJavaScript (PERFECT SERIES 4)
井上 誠一郎、土江 拓郎、浜辺 将太

テスト駆動JavaScript

テスト駆動JavaScript
Christian Johansen、長尾高弘

タイトルとURLをコピーしました