ネストした条件とは何か
「ネストした条件」とは、if 文の中にさらに if 文を書くことです。入れ子構造になっているため「ネスト」と呼ばれます。これを使うと「ある条件が真のときに、さらに別の条件をチェックする」といった段階的な判定ができます。
基本構造と流れ
ネストした条件は次のように書きます。
const age = 20;
const isMember = true;
if (age >= 18) {
if (isMember) {
console.log("成人の会員です");
} else {
console.log("成人ですが会員ではありません");
}
} else {
console.log("未成年です");
}
JavaScriptこの例では、まず「成人かどうか」を判定し、成人ならさらに「会員かどうか」を判定しています。条件を段階的に絞り込むイメージです。
ネストを使うメリット
段階的な判定ができる
「まず大きな条件を確認し、その中でさらに細かい条件を確認する」という流れを自然に書けます。
条件を整理できる
複雑な条件を一度に書くよりも、ネストして分けることで読みやすくなる場合があります。
実用例で理解する
例題1:ログインと権限チェック
const loggedIn = true;
const isAdmin = false;
if (loggedIn) {
if (isAdmin) {
console.log("管理者ページへようこそ");
} else {
console.log("一般ユーザーとしてログインしています");
}
} else {
console.log("ログインしてください");
}
JavaScriptまず「ログインしているか」を判定し、その中で「管理者かどうか」を判定しています。
例題2:試験の合否と特典
const score = 85;
const isMember = true;
if (score >= 60) {
console.log("合格です");
if (isMember) {
console.log("会員特典が適用されます");
}
} else {
console.log("不合格です");
}
JavaScript合格した人だけがさらに「会員かどうか」をチェックされ、特典が付与されます。
例題3:商品在庫と割引判定
const stock = 10;
const onSale = true;
if (stock > 0) {
console.log("在庫があります");
if (onSale) {
console.log("割引価格で購入できます");
} else {
console.log("通常価格です");
}
} else {
console.log("在庫切れです");
}
JavaScript在庫がある場合だけ、さらに「セール中かどうか」を判定しています。
注意点とコツ
ネストが深すぎると読みにくい
ネストを多用するとコードが右にずれて読みにくくなります。条件を整理して else if を使ったり、関数に分けたりすると見やすくなります。
// ネストが深い例
if (a) {
if (b) {
if (c) {
console.log("複雑すぎる");
}
}
}
// 改善例:条件をまとめる
if (a && b && c) {
console.log("読みやすい");
}
JavaScript大きな条件から小さな条件へ
「まず大きな分類を判定し、その中で細かい条件を判定する」という流れにすると理解しやすくなります。
まとめ
- ネストした条件は「if の中に if」を書く方法。
- 段階的に条件を絞り込むときに便利。
- 例:ログイン後に権限を判定、合格後に会員特典を判定など。
- ただし深すぎるネストは読みにくいので、
else ifや関数分割で整理するのがコツ。
初心者は「大きな条件の中でさらに細かい条件をチェックする」と覚えると理解しやすいです。
