JavaScriptで3つの条件分岐を作る方法
JavaScriptでは、if文やswitch文を使って条件分岐を記述することができます。しかし、簡単な条件分岐をより簡 conciseに記述したい場合には、三項演算子を使う方法があります。
三項演算子
条件 (三項) 演算子は JavaScript では唯一の、3 つのオペランドをとる演算子です。 条件に続いて疑問符 ( ? )、 そして条件が真値であった場合に実行する式、コロン ( : ) が続き、条件が偽値であった場合に実行する式が最後に来ます。 この演算子は、 if 文の代替としてよく用いられます。
構文は以下の通りです。
condition ? expr1 : expr2
説明:
condition
: 評価される条件式expr1
: 条件が真の場合に実行される式expr2
: 条件が偽の場合に実行される式
例:
const age = 25;
const message = age >= 18 ? '大人です' : '未成年です';
console.log(message); // 出力: '大人です'
三項演算子のネスト
三項演算子はネストすることもできます。つまり、条件式や実行される式の中に、さらに三項演算子を埋め込むことができます。これにより、複数の条件分岐を簡潔に記述することができます。
例:
const score = 75;
const grade = score >= 90 ? 'A' : score >= 80 ? 'B' : 'C';
console.log(grade); // 出力: 'C'
上記の例では、`score`の値によって、'A'、'B'、'C'のいずれかの値が`grade`に代入されます。このように、三項演算子をネストすることで、複数の条件分岐を簡潔に記述することができます。
三項演算子の注意点
三項演算子は便利ですが、使いすぎるとコードが読みにくくなる可能性があります。特に、ネストが深くなると、コードの構造が分かりにくくなるため注意が必要です。可読性を考慮し、if文と使い分けるようにしましょう。
参考資料
よくある質問
Q1. 三項演算子はif文と比べてどのようなメリットがありますか?
A1. 三項演算子は、if文よりも簡潔に条件分岐を記述することができます。特に、変数に代入する場合などに便利です。
Q2. 三項演算子はネストしすぎると分かりにくくなりますか?
A2. はい、三項演算子をネストしすぎると、コードの構造が複雑になり、可読性が低下する可能性があります。ネストはできるだけ浅くするように心がけましょう。
Q3. 三項演算子はどのような場合に使うのが適切ですか?
A3. 三項演算子は、単純な条件分岐を簡潔に記述したい場合に適しています。特に、変数に代入する場合や、関数に引数を渡す場合などに便利です。複雑な条件分岐には、if文やswitch文を使うようにしましょう。
```その他の参考記事:JavaScript の条件文