より具体的には、文のための演算子の優先順位事項値の組(a、bおよびc)がある。javascrtiptで演算子の優先順位が&&と==に関係しますか?
var value = (a && b == c);
(NaNを除きます)。
より具体的には、文のための演算子の優先順位事項値の組(a、bおよびc)がある。javascrtiptで演算子の優先順位が&&と==に関係しますか?
var value = (a && b == c);
(NaNを除きます)。
はい
js> false && true == false
false
js> (false && true) == false
true
==
が&&
より高い優先順位を有するので、最初はfalse && false
に相当する、false && (true == false)
として解析され、したがってfalse
に評価されます。 2番目はfalse == false
と等価です。これはtrue
文は、(a && (b == c))
に相当するように解析されます。等価演算子は、常に&&
,||
およびその他の論理演算子の前に実行されます。あなたは細かい細部hereを見つけることができます。
ですが、私はそれを理解していますが、具体的な例に違いがあるかどうかを判断しようとしていました。 –
はい。 ==
はより緊密に&&
よりも結合し、あなたが
var val = a && (b == c)
としてバインドを持っているものhereを参照してください。したがってa==0
,b==1
およびc==0
は偽であり、(a&&b)==c
は真です。
(固定タイプミス。くそ。)
= 1、B = 0、C = 0 && Bの==のC (0 == 0)=> 1 &&真=>真 –
くそ1 &&を与えるだろう。ありがとう。 –
恐ろしい、ありがとう:)あなたはjsコンソールをお勧めできますか? –
私はspidermonkeyを使用しています。http://www.mozilla.org/js/spidermonkey/私はそれをあまり使用しないで、このようなときどきの表現をテストするだけです。 –
firebug https://addons.mozilla.org/en-US/firefox/addon/1843にはJSコンソールがあります – rmmh