3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

「?.」検索できないアレは「Optional Chaining」undefinedでなければチェイン

Posted at

「プロパティがnullでなければ参照したい」
「変数がnullでなければメソッドを実行したい」
そんな感じの記述がなにか思い出せなくて悩んだ話。1

タイトルで終わっているので以下雑談。

最初は「||.」だったかなと思って
「たてせん パイプ null」
などとググって失敗。

そもそもどの言語で見たかも思い出せない。
Rubyが記号(!?)を使うことが多そうなので、
「ruby nil check」
を調べて失敗。

トリッキーな書き方なのでAltJS系だろうと、CoffeeScriptを調べて失敗。

見かけた記憶が少ないので、検討中の新機能の線を疑う。

PHPかな?
PHP7.2の新機能 - Qiita
違う。
PHPで入ったのは??だし。
でも確かこんな感じだった気がする…

他に新機能チェックするのはJSぐらいなので、「ES2018」で検索。
ES2018で追加される機能まとめ - Qiita
ちがう
2018年に見直した現代的なJavaScriptの記法を紹介するぜ - ICS MEDIA
ちがう

うーん…
でもやっぱりJSで、やっぱりrana_kualuさんの記事っぽかったよなあ
ということで
rana_kualu - Qiita
のitemを漁って、発見
これから来そうなJavaScript新機能3選 - Qiita#1-optional-chaining

proposalということでまだ全然使えないし、babelならなんとかstage-0
でもない。
Babel v7でStage Presetが削除される - Qiita
そうです。

JavaScriptを読んでて「なにこれ!?」と思うけれど調べられない記法8選。 - Qiita
に追加されててもいいレベル。

  1. 正しくはnullでなくundefinedなのかな?

3
0
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?