Panda Noir

JavaScript の限界を究めるブログでした。最近はいろんな分野を幅広めに書いてます。

オプショナルチェーン演算子は短絡評価される

{}.a?.(console.log('hoge'))

↑この時 console.log('hoge') は評価されない。つまりログに hoge と出力されない

{a:()=>{}}.a?.(console.log('hoge'))

↑この時は console.log('hoge') も評価される。ログに当然 hoge と表示される。

|| 演算子や && 演算子はもう見慣れたから短絡評価される感覚があるけど、オプショナルチェーン演算子はまだ短絡評価されるという感覚が薄い。