ほとんどの言語での論理演算の結果は、true、false、または1,0のいずれかであることを私は知っています。Javascriptで私は以下を試しました:
alert(6||5) // => returns 6
alert(5||6) // => returns 5
alert(0||5) // => returns 5
alert(5||0) // => returns 5
alert(5||1) // => returns 5
alert(1||5) // => returns 1
alert(5&&6) // => returns 6
alert(6&&5) // => returns 5
alert(0&&5) // => returns 0
alert(5&&0) // => returns 0
alert(-1&&5) // => returns 5
alert(5&&-1) // => returns -1
では、論理演算子の結果は何ですか?1つのオペランドが0または1の場合、期待どおりに機能します。両方がゼロ以外で1以外の場合、
- 論理の場合
or
、最初のオペランドが返されます - 論理の場合
and
、2番目のオペランドが返されます
これが一般的なルールですか?
私が知らないもう一つのことは演算子|
です。
オペレーターを試しましたが、|
さまざまな結果が得られました。
alert(5|8) // => returns 13
alert(8|5) // => returns 13
alert(-5|8) // => returs -5
alert(8|-5) // => returns -5
alert(0|1) // => returns 1
alert(1|0) // => returns 1
alert(1|1) // => returns 1
この演算子は実際に何をしますか?