【JavaScript】switch文のサンプル
サンプル1:基本形
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
console.log(`val = A : Result = ${switchSample1('A')}`); console.log(`val = B : Result = ${switchSample1('B')}`); console.log(`val = C : Result = ${switchSample1('C')}`); console.log(`val = D : Result = ${switchSample1('D')}`); /* val = A : Result = 値はAです。 val = B : Result = 値はBです。 val = C : Result = 値はCです。 val = D : Result = 該当する値がありません。 */ function switchSample1(val) { switch(val) { case 'A' : return '値はAです。'; break; case 'B' : return '値はBです。'; break; case 'C' : return '値はCです。'; break; default : return '該当する値がありません。'; break; } } |
サンプル2:breakを省略し、複数のブロックを一つの条件とするパターン
A,B,Cをひとまとまりの条件として扱っている。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
console.log(`val = A : Result = ${switchSample2('A')}`); console.log(`val = D : Result = ${switchSample2('D')}`); /* val = A : Result = 値はC以上です。 val = D : Result = 値が規定値以下です。 */ function switchSample2(val) { switch(val) { case 'A' : case 'B' : case 'C' : return '値はC以上です。'; break; default : return '値が規定値以下です。'; break; } } |
switch文の判定は、型まで一致していないといけない
switchの判定は、値だけでなく型まで行ってしていないといけない。
(「==」ではなく、「===」の扱い)
たとえば、以下のケースでは「case 1 : 」の処理は実行されない。
1 2 3 4 5 6 7 8 9 10 11 12 |
var val = '1' switch(val) { case 1 : //型が不一致のため、この文は実行されない。 console.log('値は1です。'); break; default : //こちらが実行される。 console.log('値は1ではありません。'); break; } |
タグ :
JavaScript