ECMA Script6(JavaScript)の三項演算子
ECMA Script6(JavaScript)では、Javaと同じように三項演算子が使えます。
let a = ''; let b = a === '' ? 'test1' : 'test2'; conosole.log(b);
結果は以下のようになります。
test1
三項演算子で気をつけること
ちょっとハマってしまったのでメモ。
let b = ''; let c = 'aaa' + b === '' ? 'test1' : 'test2'; console.log(c);// 'aaa' + bが先に評価される
上記は文字列を連結したかったのですが、上記のように記述すると、’aaa’+bが先に評価されてしまい、’test2’が返ります。
また’aaa’も消えてしまうのでちょっとハマってしまいました。これを期待通り動かせたい場合は括弧で囲むだけです。
let b = ''; let c = 'aaa' + (b === '' ? 'test1' : 'test2'); console.log(c);
結果は以下のようになります。
aaatest1
a ? true : falseという記述方法もできます。
わかりやすく記述するなら
a === undefined ? true : false;
このように書けばわかりやすいですが、
a ? true : false
も記述可能です。

KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント