【これだけ】JavaScriptの演算子【現役エンジニアが解説】

PROGRAM

今回は、JavaScriptの演算子について、比較演算子と論理演算子、三項演算子に分け、簡単に解説していきます。

JavaScriptの比較演算子

if文等の条件分岐で比較する際に必要な演算子のことを比較演算子と呼びます。

if (hoge == "hoge") { // 変数hogeの値が"hoge"であるかどうか
    // 変数hogeの値が"hoge"であるときの処理
} else {
    // 変数hogeの値が"hoge"でないときの処理
}

上記のように、一致の条件比較の場合は”=”を1つではなく2つ書く必要があります。

if (hoge != "hoge") { // 変数hogeの値が"hoge"でないかどうか
    // "変数hogeの値がhoge"でないときの処理
} else {
    // "変数hogeの値がhoge"であるときの処理
}

一方、不一致の条件比較の場合は”=”を1つ減らしたうえでその直前に”!”を付け、大小比較の場合は”<“や”>”の不等号がそのまま使えます。

if (number === 7) { // 変数numberが数値型で値が7であるかどうか
    // 変数numberが数値型で値が7であるときの処理
} else {
    // 変数numberが数値型で値が7でないときの処理
}

“=”が2つの場合は変数の型の一致まで求めませんが、上記のように3つ書いた場合は型も含めた一致の比較となり、型を含めた不一致の比較の場合は”!==”と記述する必要があります。

JavaScriptの論理演算子

if文等を使う際に、比較条件を複数書きたい場合は、論理演算子を使います。

if (hoge == "hoge" && number == "7") { // 変数hogeの値が"hoge"かつ変数numberの値が"7"であるかどうか
    // 変数hogeの値が"hoge"かつ変数numberの値が"7"であるときの処理
} else {
    // 変数hogeの値が"hoge"かつ変数numberの値が"7"でないときの処理
}

“かつ”の条件を付けたいときは、上記のように”&&”をそれぞれの条件の間に記述します。

if (hoge == "hoge" || hoge == "hoge2") { // 変数hogeの値が"hoge"または変数hogeの値が"hoge2"であるかどうか
    // 変数hogeの値が"hoge"または変数hogeの値が"hoge2"であるときの処理
} else {
    // 変数hogeの値が"hoge"または変数hogeの値が"hoge2"でないときの処理
}

一方、”または”の条件を付けたいときは、上記のように”||”を条件の間に記述し、複雑な組み合わせの場合には”()”で囲って条件式を整理します。

JavaScriptの三項演算子

比較演算子や論理演算子ではなく、三項演算子となると聞き慣れない方も多いでしょう。

三項演算子とは、代入式の右辺で使う演算子のことで、条件の真偽によって、代入する値を分岐させるための演算子のことです。

var hoge = (number == "7") ? "seven" : "hoge"; // 変数numberの値が7であるかどうか

上記のように代入式の=の右辺に”()”付きで条件を記述し、その右側に”?”、さらにその右側に”:”を挟んで真の場合と偽の場合の値をそれぞれ記述します。