画像ツール一覧

条件分岐

Conditional Branch

DEVELOPMENT

プログラミングにおいて、「もし〇〇という条件を満たしていればAの処理を、そうでなければBの処理を実行する」というように、状態に応じてプログラムの流れを枝分かれさせる仕組みのこと。

🐾 猫で例えると?

フローリングの上で、横並びではなくめずらしく直角(T字)に交差するように寝ているアメショと茶トラ
T字に寝る2匹を、条件で枝分かれする道に見立てる

直角に分かれて寝る2匹を、道が枝分かれする図に見立てています。ただし写真では両方の猫が同時にいますが、if / elseの一回の実行では、条件に応じて選ばれた枝を通ります。複数の独立したif文なら、複数の枝が実行される場合があります。

🐾 PR

💻 IT現場における「条件分岐」とは?

順次・反復・分岐は、プログラムの流れを学ぶ基本の三つです。条件分岐は、計算した条件に応じて実行する処理を選びます。条件の書き方と確認する順序が、そのまま動作のルールになります。

ECサイトで「もしカートの合計が5000円以上なら送料無料にする」「もしログインパスワードが間違っていたらエラーメッセージを出す」など、私たちが普段使っているアプリの便利な機能や安全な制御は、すべてこの無数の条件分岐の組み合わせによって実現されています。条件分岐がなければ、プログラムはただ一直線に決められた動きをするだけのロボットになってしまいます。

⚠️ 条件分岐の仕組みと注意点

条件分岐は主に `if`(もし〜なら)、`else if`(それ以外で、もし〜なら)、`else`(どの条件にも当てはまらなければ)というキーワードを使って記述されます。現場でよく使われるもう一つの形として、値によって複数の処理を振り分ける `switch` 文もあります。

function chooseCatAction(command, sound) {
  if (sound === "雷") {
    return "ソファーの下へ避難";
  } else if (command === "バーン!") {
    return "ごろんと倒れる";
  } else {
    return "のんびり待つ";
  }
}
console.log(chooseCatAction("バーン!", "雷")); // 避難を優先

else ifは上から順に評価され、最初に成立した枝だけを実行します。この例は両方の条件が成立しても雷への対応を優先します。境界の値、条件が重なる場合、どれにも当てはまらない場合を試すと、ルールの抜けを見つけやすくなります。

🛠️ 条件分岐を賢く使うためのポイント

可読性が高く、保守しやすい条件分岐を書くためのポイントは以下の通りです。

直角に並ぶ2匹を思い出すと、条件で道が分かれる様子が浮かびます。条件分岐では、該当する場合だけでなく、該当しない場合や境界の値も確かめましょう。条件が重なるときは、評価する順番で結果が変わらないかも確認します。