みなさんこんにちは!Kotonoです。
今回はJavaScriptにおける「or演算子」について書いて行きたいと思います。
or演算子は他の論理演算子と同じく、使いこなせるとプログラミングの幅が広がるので便利です。
この記事では
・論理演算子とは
・or演算子とは
などといった基本的な内容から
・基本的なor演算子の使い方
・if‐else文におけるor演算子の使い方
など、より具体的な内容に関してもわかりやすく説明していきたいと思います。
論理演算子とは
みなさんは「論理演算子」が何かわかりますか?
論理演算子とは、比較演算子を組み合わせることで条件を複雑化し、その真偽を判定するための演算子です。
論理演算子には、or(論理和)、and(論理積)とnot(否定)の三種類が存在します。
以下の表をご覧ください。
式 | 結果 |
a AND b | aとbどちらもtrueであればtrue |
a OR b | aかbどちらかtrueであればtrue |
not a | aがtrueであればfalse、aがfalseであればtrue |
上の表でもわかるように、andは二つの条件が両方trueであった場合trueを返します。orは二つの条件のうち一つがtrueであった場合にtrueを返します。notは条件がfalseであった場合にtrueを返します。
論理演算子のことを、ブール(Bool)演算子などとも呼んだりします。
or演算子とは
or演算子とは、先ほども述べたように、二つの条件のうち一つがtrueであった場合にtrueを返します。
以下の表をご覧ください。
条件1 | 条件2 | 結果 |
True | True | True |
True | False | True |
False | True | True |
False | False | False |
ご覧いただけるように、or演算子は両方ではなくどちらか一方の条件が満たされていればOKという状況に使用するものです。
JavaScriptにおけるor演算子(論理和)は、|| と表します。
以下の構文をご覧ください。
条件1 || 条件2
二つの条件の間に||が挟まれ、演算を行います。
or演算子を使用してみよう
このセクションでは、実際にor演算子を使ってみましょう。
使いこなせるようになると、様々なシチュエーションにおいて活用できるので便利です。
基本的なor演算子の使い方
では基本的なor演算子の使い方からご紹介します。
先ほども述べたように、or演算は以下のように行います。
条件1 || 条件2
この場合、条件1と条件2はbool値(trueかfalse)であることが一般的ですが、非ブール値が条件式に当てはまっている場合、いくつかのルールが適用されます。
オブジェクトはすべてtrueとみなされます。
反対に、数字の0やnull、長さゼロの文字列などはfalseとなります。
では、これらを踏まえた上で以下のサンプルコードをご覧ください。
var x = true; var y = false; var z = 0; var res1 = x || y; var res2 = y || z; console.log(res1); console.log(res2);
実行結果は以下の通りです。
true 0
上のコードでは、変数xにブール値trueを、yにブール値falseを、zに数値0を格納しました。
そして、x || yの演算結果をres1に、y || zの演算結果をres2に格納し、それらを表示させてみました。
ご覧いただけるように、res1はtrueとなっており、res2は0です。
一番目の演算の場合は、xがtrue、yがfalseなので二つの条件の内ひとつがtrueなのでres1はtrueとなりました。
if‐else文におけるor演算子の使い方
では、if‐else文内でor演算子を使用してみましょう。
if‐else文の復習を行いたい場合は、以下のリンクを参照してください。
では、以下のコードをご覧ください。
var x = true; var y = false; var z = 0; var res1 = x || y; var res2 = y || z; if (res1 == false || res2 == false) { console.log("Hello"); } else { console.log("world"); }
実行結果は以下の通りです。
Hello
上のコードでは、先ほどのコードと同じくres1とres2を使用しています。
res1がfalse、もしくはres2がfalseの場合Helloと出力させ、そうでない場合はworldと出力させました。
今回は、res1はfalseではありませんが、res2がfalseなのでif文に記述したコードが実行されました。
ご覧いただけるように、Helloと表示されました。
まとめ
今回はJavaScriptにおける「or演算子(論理和)」について解説しました。
or演算子をはじめ、他の論理演算子などをマスターすることによって、より細かい条件指定が可能となるので、覚えておいて損はありません。
みなさんもぜひこの記事を通して、論理演算子に関する知識をどんどん深めていってくださいね。