したがって、私は JavaScript コーディングに関してはかなり初心者ですが、一般的なコーディングに関しては初心者ではありません。ソースコードを書くとき、私は通常、自分のコードが実行される環境 (例えば、ある種の仮想マシン) を念頭に置いています。(1)
たとえば Java では、次のように記述します。
Foo foo = FooFactory.getFoo(Bar.someStaticStuff("qux","gak",42);
blub.doSomethingImportantWithAFooObject(foo);
オブジェクトがまさにこの場所でのみ使用されている場合でもfoo
(したがって、不要な変数宣言が導入されます)。まず、上記のコードはインライン バージョンよりもはるかに読みやすいというのが私の意見です。
blub.doSomethingImportantWithAFooObject(FooFactory.getFoo(Bar.someStaticStuff("qux","gak",42));
次に、Java コンパイラ コードの最適化がこれを処理することを知っています。つまり、実際の Java VM コードは最終的にインライン化されるため、パフォーマンスに関しては、2 つの間に違いはありません。(2)
さて、私の実際の質問:
JavaScript で一般的にどのレベルのコード最適化を期待できますか?
これは JavaScript エンジンに依存すると思いますが、私のコードは多くの異なるブラウザーで実行されることになるため、最悪の場合を想定して最悪のケースを見てみましょう。適度なレベルのコード最適化を期待できますか? まだ心配しなければならないケースにはどのようなものがありますか?
(1) 優れた/最良のアルゴリズムを見つけて、よく整理されたコードを書くことは、コードの最適化よりも重要であり、パフォーマンスに大きな影響を与えることを認識しています。しかし、それは別の質問になります。
(2) ここで、最適化を行わなかった場合の実際の差は小さいことに気付きました。しかし、それは論外です。非常に効率的に最適化された機能が簡単に存在します。for
100'000回呼び出されるループ内の上記のスニペットを想像してみてください。