JSの関数宣言速度差
-
10-10-2019 - |
質問
私は簡単なJSPerfテストを実行しましたが、Firefoxで実行されているときにすべてが予想通りに進みましたが、Google Chromeでテストを実行したときは混乱していました。
このテストでは、JavaScriptで機能を宣言するさまざまな方法をテストし、それらを呼び出しています。私の推測では、ChromeはJavaScript関数について何らかの最適化を行っていると思いますが、そのような大きな違いが何であるか、なぜかはわかりません。これをよりよく理解するためのヘルプやリンクは大歓迎です。
test =>へのリンク http://jsperf.com/function-assignment-semicolon/2
Firefoxで実行するテスト:
Chromeでのテスト:
編集:
Firefoxから得た結果は、Google Chromeで実行されたときよりも遅いことを期待していたので、Firefoxから得た結果を期待していました。
解決
デッドコード、完璧なオプティマイザーは、テスト内のすべてを削除します。これは、Googleのクランクシャフトエンジンの最近の発表により、さまざまなニュースサイトで言及されています。スタイル間の違いは、死んだコードの最適化を実装することがどれほど難しいかを示しています。
http://tech.slashdot.org/story/10/12/07/2027259/google-quetly-posts-big-javascript-engine-pdate
所属していません StackOverflow