以下のような===が続く条件文の時は、もっと簡単に記述することができる
const signal = 'red';
if (signal === 'red') {
console.log('Stop!');
} else if (signal === 'yellow') {
console.log('Caution!');
} else if (signal === 'blue') {
console.log('Go!');
}
switch ( 比較したい値(変数・定数名) ) {
case 比較する値:
行いたい処理; //処理は何行でもOK
break;
}
//比較したい値が、比較する値のとき、コロン(:)から break; までの処理を実行する
冒頭のコードを簡単にするとこうなる。
const signal = 'red';
switch (signal) {
case 'red':
console.log('Stop!');
break;
case 'yellow':
console.log('Caution!');
break;
case 'blue':
console.log('Go!');
break;
}
比較する値を複数指定することもできる。その時はcase ~: を複製し、続けて書けばOK!
const signal = 'red';
switch (signal) {
case 'red':
console.log('Stop!');
break;
case 'yellow':
console.log('Caution!');
break;
**case 'blue':
case 'green':**
console.log('Go!');
break;
}
比較する値のどれにも当てはまらない場合の処理も書ける。その時はdefault: を書く。
const signal = 'black';
switch (signal) {
case 'red':
console.log('Stop!');
break;
case 'yellow':
console.log('Caution!');
break;
case 'blue':
case 'green':
console.log('Go!');
break;
**default:
console.log('Wrong signal!'); //行いたい処理を書く
break;**
}