JavaScriptのOptional Chanining(.?)について

2021年1月29日JavaScript

JavaScriptのOptional Chanining(.?)についてまとめました。

Optional Chanining(.?)とは?

Optional Chanining(.?)はリアルのAPIからたとえばレストランの時間などを取得したいときに、そもそも木曜日の開店時間が入力されていないか?
とか開店時間自体がそもそも取得できないのか?といったことをより簡単に確認できるようにします。

Optional Chanining(.?)の使い方

{
//従来の方法
if (restaurant.openingHours && restaurant.openingHours.thu)
console.log(restaurant.openingHours.thu.open);

//Optional Chanining(.?)
console.log(restaurant.openingHours.thu?.open);
console.log(restaurant.openingHours?.thu?.open);
}

これで、木曜日が存在している場合のみ、open部分を取得してねという意味になります。もし木曜日がない場合は、そくざにundefinedが返されます。

うえのように複数使うことも可能です。