4

誰かがこれを説明できますか?

1 == 1        //true, as expected
1 === 1       //true, as expected
1 == 1 == 1   //true, as expected
1 == 1 == 2   //false, as expected
1 === 1 === 2 //false, as expected
1 === 1 === 1 //false? <--

また、この方法で2つ以上の数値を比較するブール論理の名前はありますか(私はそれを「3変数比較」と呼びましたが、それは間違っていると思います...)

4

2 に答える 2

7

この式:

1 === 1 === 1

次のように評価されます。

(1 === 1) === 1

括弧内の式を評価した後:

true === 1

そして、その式は論理的に偽です。trueただし、次の式は期待どおりに戻ります。

1 === 1 === true
于 2013-03-11T05:48:34.923 に答える
1

等価性は、左から右への優先順位の操作です。

そう:

1 == 1 == 1
true == 1
true

と:

1 === 1 === 1
true === 1
false // because triple-equals checks type as well
于 2013-03-11T05:49:53.730 に答える