ひよっこPGのブログ

主に、技術メモや英語たまにギター関連のことも書いているブログです。

||と&&の知らなかった使い方

if文に複数の条件がある場合に

||や&&を使うと思います。
if( a == 1 || a == 3 || a == 5){
  // aは、1 or 3 or 5 です。
}

if(a > 10 && a < 30){
  // aは10より大きく かつ 30より小さい
}
こんな感じですね。
 
自分が知らなかった使い方は、こんな感じ
 
var obj2 = "hoge";

var obj = obj1 || obj2 || obj3;  //obj2が代入される。
var obj = obj1 && obj2 && obj3;  //obj1が代入される。
簡単に説明すると、
変数の値によって代入する変数を決めることができる。
 
どのように判断して決めているかというと
|| 左から一番最初にtrueだった値を代入する。
&& 値が全てtrueであれば左から一番最後の値を代入する。
左から途中でfalse値が見つかったら、その値を代入する。
 

未入力チェックで上記の||を使う例です^ー^

<script type="text/javascript">
 function check(){
   var hoge = document.forms[0]["hoge"].value;
   var input = hoge || "未入力ですなー?";
   alert(input);
 }
</script>
<form>

 <input type="text" name="hoge" />

 <input onclick="check()" type="button" />

</form>