この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:3
ページ更新者:atom
更新日時:2026-05-17 14:36:56

タイトル: 条件文

条件文はあるいは条件式がtrue(真)かfalse(偽)によって処理を分岐させるための構文

if文else if文else文switch文などがある。

子ページから選択して下さい。

本ページの子ページ一覧

  • if文 — if / else if / else の基本構文
  • switch — 多分岐に向く switch / case 構文

JavaScriptの条件文の基本

if / else

if (age >= 20) {
    console.log('成人');
} else if (age >= 13) {
    console.log('ティーン');
} else {
    console.log('子供');
}

switch

switch (status) {
    case 'active':
        console.log('有効');
        break;
    case 'suspended':
        console.log('一時停止');
        break;
    default:
        console.log('不明');
}

三項演算子

短い分岐は三項演算子で書けます。

const label = age >= 20 ? '成人' : '未成年';

真偽値として扱われる値(Truthy / Falsy)

JavaScriptの条件式は値を真偽値に変換して評価します。falsyな値は次の通り。

falsyな値備考
false真偽値そのもの
0数値の0
-0 / 0nマイナス0、BigIntの0
""空文字列
nullnull
undefined未定義
NaNNot a Number

上記以外(オブジェクト、空配列[]、空オブジェクト{}を含む)はすべてtruthyです。

if vs switch の使い分け

場面向いている構文
真偽値や範囲の判定if
3つ以上の等価比較switch
2分岐の単純な値返し三項演算子
オブジェクトのプロパティで分岐Map/オブジェクトを使った lookup table

注意点

  • switchcase文breakを忘れると次のcaseまで実行される(フォールスルー)
  • switchは厳密比較(===)で評価される
  • 条件式の中で代入すると意図しない動作になる: if (x = 5) は常にtruthy
  • NaN はどんな比較でもfalse。Number.isNaN() でチェック

関連