エルビス演算子について
こんにちは森田です。
さっそくですが、みなさん「エルビス演算子」って使ったことありますか?
フロントエンドですとあまり聞き慣れないかもしれませんが、由来なども面白かったので紹介します。
エルビス演算子とは
エルビス演算子(elvis operator)は ?: という記号を用います。
今回は PHP で書いてみます。
$hoge = $a ?: $b;$a が true だったら $a をそのまま返し、false だったら $b を返します。
三項演算子で同じように書くと以下のようになります。
$hoge = $a ? $a : $b; ?: って三項演算子をくっつけたような見た目ですよね 。
実際、三項演算子のシンタックスシュガーという扱いらしいです。
JavaScript にエルビス演算子は使える?
使えないです。仕様としてありません。
しかし、以下のように論理和演算子で同様のことができます。
const hoge = a || b;これでもエルビス演算子と同様に、a が true だったら a をそのまま返し、false だったら b を返します。
React の JSX の中でよく使うお馴染みの書き方ですね。
エルビス演算子は日本語ではなんと言う?
比較演算子や倫理演算子など演算子は日本語で呼びがちですが、エルビス演算子は日本語呼びは無く、そのまま「エルビス演算子」と呼びます。
というのも、 ?: が エルビス・プレスリーに似ていることが由来だそうです。
90度回転させて、? がリーゼント、: が目みたいです。
?:
見えるような、見えないような、、







