三項(条件)演算子とは
JavaScript初心者のボクがJavaScript学習中に疑問に思ったことや学んだことを、こうやって書いているので、同じような初心者の人たちには、もしかしたら役立つかも、と思っています。
今回は、
三項演算子
と言うモノに遭遇しました。
または、
条件演算子
とも言います。
ボクは、JavaScriptの初心者ではありますが、数十年前にMSXパソコンやPC-8801、そしてFM TOWNSと言うパソコンで、BASIC言語を使っていたので、プログラミングの概念自体は、(当時のモノなら)ある程度は理解しています。
逆に言えば、プログラミングなんて数十年ぶりですし、現代のオブジェクト指向のことは知らないので、四苦八苦しているわけです。
と言う時よりも言語自体が多機能なので、覚えることが多くて大変です。
さて、そんなボクは、昔から、if文で条件判断するよりも、何とか論理演算で処理を分岐させるのが好きでした。
今回の三項演算子に遭遇したとき、if文を回避できるので、ちょっと感動した感じです。
まあ、中級者以上の人には何の面白みも無いかもしれませんが。
条件によって返す値を変化させる
三項演算子はその名のとおり、3つの項で成立します。
文法としては、
条件文 ? 値1 : 値2
この3つですね。
例文を書きましょう。
var a = 85;
var b;
b = a > 80 ? "合格" : "不合格";
です。
要するに、変数bに値を代入するんですが、
a > 80
の条件式の部分がtrueなら値1を、falseなら値2を、代入します。
上記の例文の場合は、aにはすでに85が入っているので、条件式はtrueです。
よって、bには、"合格"が代入されます。
これを、if文で書くと次の通り。
var a = 85;
var b;
if ( a > 80 ) { b = "合格"; } else { b="不合格"; }
と言うことですね。
他のプログラミング言語でもだいたい同じ概念のようですね。
条件によって変数に代入させる値を変えたい場合、いちいちif文を書くのは長いので、この三項演算子を使うと良さそうです。
そんなわけで、今回も、JavaScript学習備忘録でした。