14-4. Javascriptの式と制御フロー④式の条件
今日は式の条件をやります。
PHPの時はこちら。
taro-ris.hatenablog.com
1-1. ifステートメント
ifステートメントは、与えられた式がtrueに評価される場合のみ実行されます。複数行にわたるifステートメントでは中かっこが必要になりますが、1行のifステートメントではPHPと同様、中かっこは省略できます。
if(a>100)
{
b=2
document.write("aは100よりも大きい")
}
も
if(b==10)document.write("bは10に等しい")
も正です。
1-2.elseステートメント
条件が満たされない場合、elseステートメントを使用することで別の選択肢が実行できます。
if(a>100)
{
b=2
document.write("aは100よりも大きい")
}
else
{
document.write("aは100よりも小さいか100に等しい")
}
1-3.switchステートメント
switchステートメントは1つの変数や式の結果が複数の値を持つ可能性があり、そこから別々の関数を実行したい場合に便利です。
選択肢が、home、about、login、linksあって、ユーザーが選択したいずれか1つを変数pageに設定するとします。
◎if...else...ifステートメントでかく場合
if (page == "Home") document.write("You selected Home")
else if (page == "About") document.write("You selected About")
else if (page == "News") document.write("You selected News")
else if (page == "Login") document.write("You selected Login")
else if (page == "Links") document.write("You selected Links")
これをswitchステートメントでかくと、
◎switchステートメントでかく場合
switch (page)
{
case "Home": document.write("You selected Home")
break
case "About": document.write("You selected About")
break
case "News": document.write("You selected News")
break
case "Login": document.write("You selected Login")
break
case "Links": document.write("You selected Links")
break
}
変数pageがでてくるのはswitchステートメントの最初1回だけでう。そのあとはcaseコマンドが一致について調べます。一致したときに、そこに書かれている条件ステートメントが実行されます。
1-4.?演算子
三項演算子(?)は:文字との組み合わせで、if...elseと同等のテストを行うことができます。
評価する式を記述しその後に?記号をつづけ、次いで式がtrueの場合に実行するコードを記述します。
そして:を加えて、式がfalseの場合に実行するコードを記述します。
◎三項演算子の使用
document.write(
a <= 5 ?
"a is less than or equal to 5" :
"a is greater than 5"
)
これをすごく短く1行にすることもできます。
size = a <=5 ?"short":"long"
次回はループをやって15章へいきます。
いじょー