if文の省略について

Posted by specterant on 2012.03.14

ActionScriptやJavaScriptなど組むとき、if文を使用することが多々あります。
そんなif文は省略して書くことができるのでメモです。

【条件が1つの場合、1行で記述できます。】

/********************************
//「if文省略(条件が1つ)」記述例
********************************/
var hogeNum = 3;

//省略無し ------------------------------------------- //
if (hogeNum == 3) {
	alert("【省略無し】hogeNumは「3」です!");
}

//省略あり ------------------------------------------- //
if (hogeNum == 3) alert("【省略あり】hogeNumは「3」です!");

// [結果] ------------------------------------------- //
//【省略無し】hogeNumは「3」です!
//【省略あり】hogeNumは「3」です!
【条件がtrueかfalseかの場合、論理和演算子を使用すれば1行で記述できます。】
/********************************
//「if文省略(論理和演算子)」記述例
********************************/
var hogeStr = "何らかの文字が入っとる。";
var traceStr;

//省略無し ------------------------------------------- //
if (hogeStr) {
	traceStr = hogeStr;
	alert("【省略無し】" + traceStr);
}
else {
	traceStr = "hogeStrは「文字が入力されておりまへん」";
	alert("【省略無し】" + traceStr);
}

//省略あり ------------------------------------------- //
traceStr = hogeStr || "hogeStrは「文字が入力されておりまへん」";
alert("【省略あり】" + traceStr);

// [結果] ------------------------------------------- //
//【省略無し】何らかの文字が入っとる。
//【省略あり】何らかの文字が入っとる。
【「条件 ? true時の処理 : false時の処理」という感じで、条件演算子を使用すれば1行で記述できます。】
var hogeNum = 30;
var traceStr;

//省略無し ------------------------------------------- //
if (hogeNum > 10) {
	alert("【省略無し】hogeNumは「10」より大きいぞ!");
}
else {
	alert("【省略無し】hogeNumは「10」より小さいです…");
}

//省略あり ------------------------------------------- //
traceStr = (hogeNum > 10) ? "hogeNumは「10」より大きいぞ!" : "hogeNumは「10」より小さいです…";
alert("【省略あり】" + traceStr);

// [結果] ------------------------------------------- //
//【省略無し】hogeNumは「10」より大きいぞ!
//【省略あり】hogeNumは「10」より大きいぞ!
そんな訳で、単純な条件であれば省略を利用して、複雑なものはswitch-case文も入れて検討すればいいのかなぁ。

No comments yet.

Write a comment:

WP-SpamFree by Pole Position Marketing