JavaScriptのswitch文の基本構文と使いどころを学ぼう!初心者でもわかる条件分岐の書き方
生徒
「先生、JavaScriptで複数の条件によって処理を変えたいとき、どう書けばいいですか?」
先生
「複数の条件がある場合は、switch文を使うとわかりやすく書けます。if文でもできますが、条件がたくさんあるとコードが長くなってしまいます。」
生徒
「switch文ってどんなふうに書くんですか?」
先生
「では基本の書き方から説明しますね!」
1. switch文とは?基本構文を見てみよう
switch文は、ある値が何と等しいかを調べて、それぞれの場合に応じた処理を行うための書き方です。複数の選択肢があるときに使うことが多いです。
基本構文は次の通りです。
switch (式) {
case 値1:
// 値1の場合の処理
break;
case 値2:
// 値2の場合の処理
break;
// 他のcaseも続ける
default:
// どのcaseにも当てはまらない場合の処理
}
ここで、switchの後の式は評価される値で、それとcaseの値を順番に比べていきます。caseの値に一致するものがあれば、その処理を実行します。
breakは処理をそこで終わらせるために必要な命令で、これを書かないと次のcaseの処理まで続けて実行されてしまいます。
defaultは、どのcaseにも当てはまらない場合に実行される処理です。省略もできますが、エラー防止のため書くことが多いです。
2. switch文の簡単な例:曜日ごとにメッセージを変える
たとえば、曜日の番号(0〜6)に応じて、その曜日名を表示する例を見てみましょう。
let day = 3;
let dayName;
switch (day) {
case 0:
dayName = "日曜日";
break;
case 1:
dayName = "月曜日";
break;
case 2:
dayName = "火曜日";
break;
case 3:
dayName = "水曜日";
break;
case 4:
dayName = "木曜日";
break;
case 5:
dayName = "金曜日";
break;
case 6:
dayName = "土曜日";
break;
default:
dayName = "不正な曜日です";
}
console.log(dayName);
水曜日
この例では、変数dayが3なので、水曜日のメッセージが表示されます。
3. switch文を使うメリット
- コードが見やすくなる
たくさんの条件分岐を整理して書けるので、読みやすくなります。 - 複数の値に対する処理を簡単に書ける
同じ変数の値に対して処理を変える場合に便利です。 - ミスを減らせる
書き方が決まっているので、条件漏れや記述ミスを防ぎやすいです。
4. switch文の注意点とポイント
- breakの書き忘れに注意
breakを書かないと、次のcaseの処理まで続けて実行されてしまいます。意図的に続けることもありますが、初心者は特に気を付けましょう。 - 式の値は厳密比較される
switchは比較に===(型と値が両方等しい)を使います。型が違うと一致しません。 - 複雑な条件には向かない
範囲判定や複雑な条件にはif文を使うほうがわかりやすいです。
5. switch文の活用例:簡単なメニュー選択
ユーザーが入力したメニュー番号に応じて料理名を表示する例です。
let menu = 2;
let dish;
switch (menu) {
case 1:
dish = "カレーライス";
break;
case 2:
dish = "ハンバーグ";
break;
case 3:
dish = "ラーメン";
break;
default:
dish = "メニューにありません";
}
console.log(dish);
ハンバーグ
こうした選択肢が複数ある処理は、switch文が便利です。
6. よくある質問:switch文のdefaultは必須ですか?
defaultは必須ではありませんが、予期しない値が来たときに備えて書いておくのが安全です。エラーの原因を見つけやすくなります。
7. まとめない代わりに簡単ポイント整理
switch文は複数の条件分岐を整理して書くのに便利。- 各
caseの最後にはbreakを書くのを忘れない。 defaultで例外処理を書くと安全。- 複雑な条件や範囲判定は
if文のほうが向いている。
まとめ
JavaScriptのswitch文は、複数の条件分岐を整理してわかりやすく記述できる重要な構文です。if文でも同様の処理は可能ですが、条件が増えてくるとネストが深くなり、可読性が大きく下がってしまいます。その点、switch文は一つの値に対して複数の選択肢を並べて比較できるため、コードの見通しがよくなり、保守性も高まります。特に初心者がプログラミングを学習する際には、条件分岐の基本としてif文とあわせて理解しておくべき重要なポイントです。
switch文の基本構文では、switchの後に評価する式を書き、その結果と一致するcaseの処理が実行されます。このとき重要になるのがbreak文の存在です。breakを記述しないと、次のcaseに処理が流れてしまうため、意図しない動作を引き起こす可能性があります。初心者がつまずきやすいポイントの一つなので、必ず意識して書く習慣を身につけることが大切です。
また、defaultの使い方も重要です。defaultはどのcaseにも一致しなかった場合に実行される処理であり、予期しない値が入力されたときの安全対策として機能します。エラーを未然に防ぐためにも、基本的にはdefaultを用意しておくことが推奨されます。実務でも入力値のチェックや例外処理として活用される場面が多いため、必ず覚えておきましょう。
switch文が活躍する場面としては、メニュー選択、曜日判定、ステータス管理など、同じ変数の値に応じて処理を分岐したいケースが挙げられます。例えばユーザーが選択した番号によって表示内容を変える処理や、数値に応じた状態分岐などは、switch文を使うことで非常にシンプルに記述できます。こうしたパターンを理解しておくことで、実践的なプログラム作成にも役立ちます。
一方で、switch文には向き不向きもあります。範囲条件や複雑な論理式を扱う場合には、if文のほうが適しています。switch文はあくまで値の一致を前提とした条件分岐なので、使いどころを正しく判断することが重要です。条件の内容を見て、どちらの構文を使うべきか選べるようになると、より効率的なコーディングができるようになります。
以下に、理解を深めるための簡単なサンプルプログラムを示します。実際にコードを書いて動作を確認することで、知識がより確実に身につきます。
let score = 85;
let result;
switch (true) {
case score >= 90:
result = "とても良い成績です";
break;
case score >= 70:
result = "良い成績です";
break;
case score >= 50:
result = "合格です";
break;
default:
result = "再試験が必要です";
}
console.log(result);
良い成績です
このようにswitch文は応用次第で柔軟な条件分岐にも対応できます。基本構文をしっかり理解したうえで、さまざまなパターンに挑戦してみることが大切です。繰り返し練習することで、自然と使い分けができるようになります。
生徒
「switch文って、同じ変数を何回も比較するときに便利なんですね。」
先生
「その通りです。if文よりもスッキリ書けるので、条件が多いときに特に役立ちます。」
生徒
「でもbreakを書き忘れると、次の処理まで実行されるんですよね。」
先生
「よく気づきました。breakの書き忘れはよくあるミスなので、必ず確認する習慣をつけましょう。」
生徒
「defaultも書いておいたほうが安全なんですよね。」
先生
「そうです。予想外の値に対応できるので、エラー対策としてとても重要です。」
生徒
「switch文とif文をうまく使い分けることが大切なんですね。」
先生
「その理解で問題ありません。条件の種類に応じて最適な書き方を選べるようになると、プログラミングのレベルが一段上がりますよ。」