クエスチョン・コロン・セミコロン?三項演算子
クエスチョン・コロン・セミコロン?三項演算子
クエスチョン・コロン・セミコロン?
コピペでOKなどでよく見るかもしれません、これは何ですか?と質問があったので…ちょっと更新がてら記事に。
今後jQueryやJavaScriptもそうですが、プログラムを勉強する方は記述方法を覚えておいた方がいいかもしれません。
基本的な記述方法はこう↓
条件式 ? TRUEの場合の返却値:FALSEの場合の返却値 ;
var valueOne = 何かしらの数値など; var valueTwo = 何かしらの数値など; var min = valueOne < valueTwo ? valueOne : valueTwo;
この式では変数intValueOneとintValueTwoの値を比較して小さいほうをminの変数に代入するという式です。
条件式がTrueであればminにはvalueOneを、FalseであればminにvalueTwoを代入します。
もし、if文で書くなら下のような記述になります。
if (valueOne > valueTwo) { max = valueOne; } else { max = valueTwo; }
ということは三項演算子はつまり、if文と一緒?
「いいえ、それは三項演算子です。」
確かにやっていることだけを見ると同じことかもしれません。
プログラム初心者の方はif文の方が馴染みがあるだけに読みやすいでしょう。
ただ、if文は構文であって、その中の分岐文であって、三項演算子は条件演算子であって、演算子であるという点で大きく違います。
出来れば代入だけなどの処理は三項演算子を用いる方がスマートかもしれません。
if文は分岐の時だけに使うなどですね。
三項演算子の記述方法はプログラムでは基本的には共通ですので、javascriptやPHP、もちろん他の言語でも見かけたら、あぁこういうことなんだ!って思ってもらえればいいと思います。