switchステートメントは、異なる条件に基づいて別のアクションを実行するために使用されます。
JavaScriptのSwitchステートメント
使用するswitchで実行されるコードの多くのブロックのいずれかを選択するステートメントを。
構文
switch( expression ) {
case n :
code block
break;
case n :
code block
break;
default:
default code block
}
これは、それがどのように動作するかです:
- switch式が一度だけ評価されます。
- 式の値は、それぞれの場合の値と比較されます。
- 一致がある場合、コードの関連するブロックが実行されます。
例
getDay()メソッドは、0と6の間の数として曜日を返します(Sunday=0, Monday=1, Tuesday=2 ..)
曜日の名前を計算するために、平日の番号を使用します。
switch (new Date().getDay()) {
case 0:
day = "Sunday";
break;
case 1:
day = "Monday";
break;
case 2:
day = "Tuesday";
break;
case 3:
day = "Wednesday";
break;
case 4:
day = "Thursday";
break;
case 5:
day = "Friday";
break;
case 6:
day = "Saturday";
break;
}
その日の結果は次のようになります。
Sunday
»それを自分で試してみてください breakキーワード
JavaScriptコードインタプリタが到達したときbreakキーワードを、それがの勃発switchブロック。
これは、ブロック内のより多くのコードとケースのテストの実行を停止します。
break 、それが内のコードのすべての残りの実行「無視する」ため、実行時間を大幅に節約することができswitchブロックを。
defaultキーワード
defaultキーワードは、ケースの一致がない場合に実行するコードを指定します。
例
getDay()メソッドは、0と6の間の数として曜日を返します。
今日は土曜日(6)も日曜日もない場合は(0)、デフォルトのメッセージを書きます:
switch (new Date().getDay()) {
case 6:
text = "Today is Saturday";
break;
case 0:
text = "Today is Sunday";
break;
default:
text = "Looking forward to the Weekend";
}
テキストの結果は次のようになります。
Today is Sunday
»それを自分で試してみてください 共通のコードとフォールスルー
時には、でswitchブロックには、別の例は、同じコードを使用したいと思うでしょう、またはフォールスルー共通のデフォルトに。
例は、同一のコードブロックを共有することができること、およびデフォルトの場合は、内の最後のケースである必要はないことを、次の例から注意switchブロック:
例
switch (new Date().getDay()) {
case 1:
case 2:
case 3:
default:
text = "Looking forward to the Weekend";
break;
case 4:
case 5:
text = "Soon it is Weekend";
break;
case 0:
case 6:
text = "It is Weekend";
}
»それを自分で試してみてください 場合はdefault内の最後のケースではありませんswitchブロック、で終了することを忘れないでくださいbreak 。