ECMAScriptswitch文
switch 文
switch 文は if 文の兄弟文です。
開発者は switch 文を使って式に一連の状況(case)を提供することができます。
switch 文の構文:
switch (expression) case value: statement; break; case value: statement; break; case value: statement; break; case value: statement; break; ... case value: statement; break; default: statement;
各状況(case)は「もし」を表す expression が value、を満たす statement。
break キーワードは、switch 文からコードを跳出させます。break キーワードがなくても、コードは次の case に進行します。
default キーワードは、表現の結果がどのケースにも一致しない場合の操作を示します(実際には、else 文と同様です)。
switch 文は、以下のようなコードを開発者から避けるために主に使用されます:
if (i == 20) alert("20"); else if (i == 30) alert("30"); else if (i == 40) alert("40"); else alert("other");
等価な switch 文は以下のようになります:
switch (i) { case 20: alert("20"); break; case 30: alert("30"); break; case 40: alert("40"); break; default: alert("other"); }
ECMAScript と Java の switch 文
ECMAScript と Java の switch 文は以下の2点で異なります。ECMAScript では、switch 文が文字列に使用でき、常量でない値を使用して条件を指定できます:
var BLUE = "blue", RED = "red", GREEN = "green"; switch (sColor) { case BLUE: alert("Blue"); break; case RED: alert("Red"); break; case GREEN: alert("Green"); break; default: alert("Other"); }
ここでは、switch 文が文字列 sColor に使用されており、case は変数 BLUE、RED、GREEN を使用しており、ECMAScript では完全に有効です。