論理式
式には、数値演算をする式の他に、論理演算をする論理式もあります。
ビット毎の演算をする論理演算もありますが、ここでは左辺と右辺を比較する比較演算と論理積(AND)、論理和(OR)、否定(NOT)について説明します。
大小や一致の比較
2つの値(変数の値)を比較するには、比較演算子を使って判定します。比較演算子は左辺と右辺を比較して、その関係が成立すれば true を、成立しなければ false の値となる。
table:比較演算子
< (左が右)より小さい
<= (左が右)以下
(左が右)より大きい
= (左が右)以上
== (左と右が)等しい
=== (左と右が)等しい
!= (左と右が)等しくない
!== (左と右が)等しくない
例:
3 < 5 -> true
3 == 5 -> false
a > 5 ( -> a の値が5より大きければ true、そうでなければ false)
a != b ( a と b の値を比較して、等しくなければ true 、そうでなければ false )
「かつ」「または」などの条件の組み合わせ
「かつ」「または」などで組み合わせて判定したいときは、論理演算子を使います。
「かつ」は論理積(AND)演算子を使い、「または」は論理和(OR)演算子を使います。JavaScriptでは次の表のようになります。条件を否定する否定(NOT)演算子もあります。それらを組み合わせてさらに複雑な条件式を作成することもかのうですが、理解を助けるため()を使ってわかりやすく表記しましょう。
table:論理演算子
&& 論理積 AND 左辺を評価し false なら false 、そうでなければ右辺を評価しその結果となる
|| 論理和 OR 左辺を評価し true なら true 、そうでなければ右辺を評価しその結果となる
! 否定 NOT 式を評価し、その値の真偽を反転する
例:
( a < 0 || a >= 5 ) : aが0より小さいか、またはaが5以上のとき true、それ以外は false
( a >=0 && a < 5 ) : a が 0 以上、5 より小さいとき true 、それ以外は false
( a < 3 && a > 4 ) : 常に false
! ( a < 0 || a >= 5 ) : aが0より小さいか、またはaが5以上のとき false、それ以外は true、この結果は2番目の例 ( a >=0 && a < 5 ) と等しい結果となる