1

重複の可能性:
Javascript 条件付き順序評価

if ステートメントの複数の条件はどのように機能しますか?

if( bacon && bacon == "crispy") {
   self.eat(bacon);
}

bacon存在しない場合でも、「baconクリスピー」かどうかを確認しようとしますか?

4

2 に答える 2

5

いいえ、短絡評価を使用するため、LHS を評価することが RHS を評価する必要がないことを意味する場合は、そうしません。

これは JavaScript で非常に頻繁に悪用されます...

foo = foo || "bar";

footrue (LHS) の場合、条件は既知であり、trueそのfoo値が割り当てられます (これらの条件は最後に評価された式を返します)。

ただし、foofalsyの場合、RHS 式を評価し、その結果を に代入しfooます。

于 2012-11-26T01:37:03.267 に答える
0

&& 演算子は JavaScript の短絡演算子で、最初の条件が false の場合に残りのステートメントが評価されないようにします。

于 2012-11-26T01:37:29.893 に答える