[解決済み] javascriptのif文で複数の条件を指定した場合、すべての条件をテストするのでしょうか?
2022-09-26 22:27:37
質問
javascriptで、複数の条件をテストするif文を使用する場合、javascriptはそれらすべてを関係なくテストするのでしょうか、それともすでにfalseの場合はすべてをテストする前にベールされるのでしょうか。
例えば
a = 1
b = 2
c = 1
if (a==1 && b==1 && c==1)
javascriptはこれらの3つの条件すべてをテストするのでしょうか、それともbが1でないため偽であることを確認した後、文を終了するのでしょうか?
私はパフォーマンスの観点から質問します。たとえば、私が3つの複雑なjQueryセレクタをテストしている場合、最初の1つによってfalseを返すことが明らかであれば、jQueryに3回DOMをトラバースさせない方がよいでしょう(この場合、jQueryはfalseを返すことになります)。(この場合、3つのif文をネストする方がより理にかなっています)。
補足: より多くの好奇心、これに対する適切な用語は何でしょうか? 多くの人が「短絡」という用語を使用していることに気づきました。また、ある言語はこれを行い、他の言語は行わないのでしょうか?
どのように解決するのですか?
この
&&
演算子は短絡します。つまり、左の条件が偽であれば、右の条件をわざわざ評価する必要はないのです。
同様に
||
演算子も左の条件が真であれば短絡します。
EDIT: とはいえ、ベンチマークをとって問題だと判断するまでは、パフォーマンスを気にするべきではありません。早まったマイクロ最適化は保守性の弊害です。
関連
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] JavaScriptのオブジェクトが空であることをテストするにはどうすればよいですか?
-
[解決済み] JavaScriptで現在のURLを取得する?
-
[解決済み] JavaScriptで要素のクラスを変更するにはどうすればよいですか?
-
[解決済み] 私のJavaScriptコードは "No 'Access-Control-Allow-Origin' header is present on requested resource "というエラーを受け取りますが、Postmanはそうならないのはなぜですか?
-
[解決済み] JavaScriptで2つの日付を比較する
-
[解決済み] JavaScriptの配列で一意な値をすべて取得する(重複を排除する)。
-
[解決済み] JavaScriptで複数ケースを扱うSwitch文
-
[解決済み】JavaScriptで文字列の出現箇所をすべて置換する方法
-
[解決済み] JavaScript で css プロパティを使用して HTML 要素の背景色を設定する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 上級者向けJavaScript。この関数はなぜ括弧でくくられるのですか?重複
-
[解決済み] アサインの左側にJavascriptのオブジェクトブラケット表記({ ナビゲーション } =)があります。
-
[解決済み] 文字列がhtmlであるかどうかをチェックする
-
[解決済み] jqueryはjavascriptのライブラリなのかフレームワークなのか?[クローズド]
-
[解決済み] 文字列とラベルのローカライズとグローバリゼーションのベストプラクティス【終了しました
-
[解決済み] JavaScriptとLuaの微妙な違い [終了しました]
-
[解決済み] HTML要素にスクロールバーがあるかどうかをチェックする
-
[解決済み] JavaScriptのArray.sort()メソッドでシャッフルするのは正しいのか?
-
[解決済み] javascriptのキャンバスで画像をリサイズする (スムーズ)
-
[解決済み] JavaScriptデータフォーマット/プリティプリンタ