三項演算子とは
if文を1行で書くことができる演算子
(条件式) ? (条件がtrueの時の値) : (条件がfalseの時の値)
という書き方ができる
JavaScriptでの記述例
例1
JavaScript
let flag = true
const ab = flag ? "A" : "B" //flagがtrueだったら"A"が入る、falseなら"B"
console.log(ab) // Aが出力される
例2 奇数か偶数か判定する
JavaScript
let randNum = Math.floor( Math.random() * 10 ) + 1 // 1から10までの整数
console.log(randNum)
const odd = (randNum % 2 === 0) ? "偶数" : "奇数" // 2で割った余りが0なら偶数、そうでないなら奇数
console.log(odd)
例3 &&
を使う
JavaScript
let randNum = Math.floor( Math.random() * 10 ) + 1
console.log(randNum)
const odd2 = (randNum % 2 === 0) && "偶数" //trueの時だけ"偶数"、falseの時はfalseが入る
console.log(odd2)
例4 ||
を使う
JavaScript
let randNum = Math.floor( Math.random() * 10 ) + 1
console.log(randNum)
const odd2 = (randNum % 2 === 0) && "偶数" //trueの時だけ"偶数"、falseの時はfalseが入る
console.log(odd2)
console.log(odd2 || "奇数") //もしodd2がfalse(奇数)だった場合
全体
JavaScript
let randNum = Math.floor( Math.random() * 10 ) + 1
console.log(randNum)
const odd = (randNum % 2 === 0) ? "偶数" : "奇数"
const odd2 = (randNum % 2 === 0) && "偶数" //trueの時だけ"偶数"、falseの時はfalseが入る
console.log(odd)
console.log(odd2)
console.log(odd2 || "奇数") //もしodd2がfalse(奇数)だった場合
?
以外に&&
と||
を使う
時と場合によるが&&
と||
を使う
可読性は下がるが三項演算子を使えばコードの記述量が短くなる