論理演算子 とは
論理演算子とは、2 つ以上の条件式の結果を 「 論理和 」 、 「 論理積 」 、 「 排他的論理和 」 としての真偽値を求めるための演算子です。
つまり、幾つかの条件が有る場合に、その条件を全て満たすか、その中の 1 つを満たすか、 その中のどれも満たさないかという論理的な 「 和 」 や 「 積 」 の結果を返すための演算子ということです。
これは、言葉で説明すると分かりにくいかもしれません。 比較演算子が理解できていない場合は、先に 比較演算子 について必ず理解してください。
論理パターン サンプル
比較例 | 意味 | 補足 |
---|---|---|
O1 == O2 & O3 == O4 | 条件式1 AND 条件式2 | 条件式の双方を満たせば 1 を返します |
O1 == O2 | O3 == O4 | 条件式1 OR 条件式2 | 条件式のどちらかを満たせば 1 を返します |
O1 == O2 ^ O3 == O4 | 条件式1 XOR 条件式2 | 条件式のどちらも満たさなければ 1 を返します |
O1 == O2 && O3 == O4 | 条件式1 AND 条件式2 | 条件式の双方を満たせば true を返します |
O1 == O2 || O3 == O4 | 条件式1 OR 条件式2 | 条件式のどちらかを満たせば true を返します |
O1 ?? O2 | 値1 ?? 値2 | 左辺が null または undefined の場合に右の値を返し、それ以外の場合に左の値を返します |
サンプルコードと実行結果
ここでは、 JavaScript を使って幾つかの比較サンプルを用意しました。
サンプルコード: script
ここでは、結果値に着目する為に、細かなコードは省略しています。
オペランドと論理演算子の使用パターンから導き出される、結果値に着目して理解を深めていただければと思います。
<script>
let operand1 = 0 + 0;
let operand2 = 0 * 0;
let operand3 = null;
let operand4 = "AAA";
</script>
( operand1 == 0 & operand2 == 0 ) の結果は
( operand1 == 0 | operand2 == 0 ) の結果は
( operand1 == 0 ^ operand2 == 0 ) の結果は
( operand1 == 0 && operand2 == 0 ) の結果は
( operand1 == 0 || operand2 == 0 ) の結果は
( operand3 ?? operand4 ) の結果は
( operand4 ?? operand3 ) の結果は