21

いくつかのスニペットを見ながら、JavaScriptについて同僚と話し合っていました。;これらのスニペットには、ステートメントの最後にが欠落していることに気づきました。JSは行末にセミコロンが表示されていなくても正しく解釈されることは誰もが知っていますが、これはインタプリタ言語であるため、評価のパフォーマンスに何らかの影響を与えるのではないかと思いました。

4

3 に答える 3

29

スペース、セミコロン、コメントを含むjavascriptファイルはより重いです。それが主な影響です。

しかし、あなたはコーダーであり、コードを維持する必要があるため、このごくわずかな影響は、読みやすさへの悪影響よりもはるかに重要ではありません。また、セミコロンを省略すると、いつ省略できるかがわかります。しかし、ルールはそれほど単純ではなく、それらを学ぶことはあなたの時間の価値がありません。

セミコロンはそのままにしておくと、バグを回避できます。

また、可能な限り軽量のコードが必要な場合は、ミニファイアを使用てブラウザ用のより簡潔なコードを作成します。それはあなたの義務ではなく、その義務です。

于 2013-01-17T13:21:22.910 に答える
12

JSでセミコロンを省略することは大きな議論ですが、常にセミコロンを保持する必要があります。パフォーマンスについて話す場合、セミコロンを維持している間はほとんどメリットがありません。

しかし、物事はここだけで終わるわけではありません。パフォーマンス以外に、注意が必要な大きなことが1つあります。

Doug Crockfordは、このプレゼンテーションでセミコロンの必要性を非常によく説明しています。

JSインタープリターはエラーを検出し、セミコロンを追加して、すべてを再度実行します。しかし、彼がセミコロンを正しい場所に置くたびにではなく、陽気なバグが結果として生じます。常にセミコロンを作成し、JSLintなどのテストツールを使用してjsを実行する必要があります。

このセミコロン以外に、コードの構造がより明確になり、クリーンになります。さらに、セミコロンが存在することで、一部の開発者はコードを難読化できます。

それがあなたを助けることを願っています。

于 2013-01-17T13:34:17.490 に答える
2

コード構文のわずかな違いは、通常、コードのパフォーマンスにほとんど影響を与えません。コードの文字列を解釈するプロセスは非常に効率的であり、実際にコードを実行するのにかかる時間のごく一部しかかかりません。

非効率的なアルゴリズムや、単一の.jsファイルではなく複数の.jsファイルを取り込むなどの余分なネットワーク呼び出しは、はるかに大きな影響を及ぼします。

于 2013-01-17T13:21:10.617 に答える