分岐の条件 | switch | JavaScript 超完全入門 基本から発展までのすべて

スポンサーリンク
スポンサーリンク

switchとは?

switchは、JavaScriptにおける条件分岐の一種で、特定の値に基づいて複数の条件から1つを選択して処理を行います。ifと異なり、switchでは1つの変数や式の結果に応じて、複数のケースの中から適切なものを選び出し、対応する処理を実行します。

switchの基本構造

switchは、以下のような構造で使用します。

switch (式) {
    case 値1:
        // 値1に一致する場合の処理
        break;
    case 値2:
        // 値2に一致する場合の処理
        break;
}

switchでは、caseキーワードで各ケースを定義し、式の値と一致する場合にそのブロックが実行されます。

分岐の条件の例

次に、基本的なswitchの使用例を見てみましょう。

let fruit = "apple";

switch (fruit) {
    case "apple":
        console.log("リンゴです");
        break;
    case "banana":
        console.log("バナナです");
        break;
    case "orange":
        console.log("オレンジです");
        break;
}

この例では、変数fruit"apple"であるため、「リンゴです」というメッセージが表示されます。もしfruit"banana""orange"であれば、それぞれのケースに応じたメッセージが表示されます。fruitがどのケースにも一致しない場合には、「不明な果物です」というデフォルトのメッセージが表示されます。

分岐の条件を使った応用例

次に、分岐の条件を使って、季節に応じたメッセージを表示するプログラムを見てみましょう。

let season = "summer";

switch (season) {
    case "spring":
        console.log("春です");
        break;
    case "summer":
        console.log("夏です");
        break;
    case "autumn":
        console.log("秋です");
        break;
    case "winter":
        console.log("冬です");
        break;
}

この例では、変数season"summer"であるため、「夏です」というメッセージが表示されます。各季節に応じて異なるメッセージを表示する分岐を、switchで簡潔に表現できます。

分岐条件でのbreakの重要性

switchの中でbreakを使用することは非常に重要です。breakがない場合、条件に一致した後も次のcaseが実行されてしまいます。これをフォールスルーと呼びます。

let day = "monday";

switch (day) {
    case "monday":
        console.log("月曜日です");
    case "tuesday":
        console.log("火曜日です");
}

この例では、day"monday"に一致するにも関わらず、tuesdayの処理も続けて実行されます。これを防ぐためには、breakを各caseの後に配置する必要があります。「火曜日です」と表示されるわけではなく、case”tuesday”の条件式が実行されるという意味です。

まとめ

JavaScriptのswitchを使うと、特定の値に基づいた条件分岐をシンプルに記述できます。ifよりも可読性が高くなるケースが多く、特に複数の値に基づいて異なる処理を行う場合に有効です。breakの使用や、複数のcaseをまとめる技法を理解することで、さらに柔軟な条件分岐が可能になります。