【js 演算子とは】or/and/not 条件分岐を解説!

2019-03-17 12:55

Java scriptの多くは複雑になればなるほど、if文の理解が必須になりますね。

そこで今回は「論理演算子」「三項演算子」をざっくり解説します。具体的には下記の2種類です。基礎の基礎、スタート地点になります。

or / and / not
true / falseの条件分岐


or / and / not

(例 – or)「りんご」または、「バナナ」だったら、という条件分岐の時に使います。

//論理 OR (||)
if( fruits=="apple" || fruits=="banana" ){
//ここに処理を記述

} else {}

(例 – and)「りんご」かつ、「赤」だったら、という条件分岐の時に使います。

//AND(&&)
if( fruits=="apple" && color=="red" ){
//ここに処理を記述

} else {}

(例 – not)「りんご」でなかったら、という条件分岐の時に使います。

//論理 NOT (!)
if( fruits==!"apple" ){
//ここに処理を記述

} else {}

true / falseの条件分岐(三項演算子)

変数 = 条件式 ? trueの時の値 : falseの時の値 ;
という仕組みを取ります。上記の「or / and / not」を駆使することでより複雑な条件式を作ることが出来ます。
(例)「色が赤」だったら「変数 fruitsに”りんご”を格納する」、そうでないときは「変数 fruitsに”バナナ”を格納する」

var fruits = $( color=="red"  ? 'りんご' : 'バナナ' );

上記の式をミックスした具体例を作って見ましょう。

//urlを取得
var href = location.href;

//hrefの中身を判別してtargetを変更する
//hrefが"#"または指定していなかったら「hrefに"html"」を格納
//hrefが"#"でも空でもなかったら「href」に格納した値をそのまま使う
var target = $(href === "#" || href === "" ? 'html' : href );