Разбор
Оператор опциональной последовательности вошёл в стандарт ECMAScript 2020. На момент написания он был ещё в proposal-стадии и уже работал в Chrome 80 и Chrome Canary.
Ты когда-нибудь использовал && как защитную проверку перед доступом к свойству?
В JavaScript мы можем сначала проверить, существует ли объект, а затем попытаться получить одно из его свойств, например так:
const car = null;
const color = car && car.color;Даже если car имеет значение null, у нас нет ошибок, а color присваивается значение null.
Мы можем пройти несколько уровней:
const car = {}
const colorName = car && car.color && car.color.name;Теперь, новый оператор опциональной последовательности позволит нам делать так:
const car = {}
const color = car?.color;
const colorName = car?.color?.name;Если car имеет значение null или undefined, результат будет undefined.
Более детально здесь;
Ты можешь использовать этот синтаксис сегодня с помощью этого плагина Babel.