Оператор опциональной последовательности - это новая функция, которая появится в следующем стандарте ECMAScript.
Всё это ещё не официально, но уже доступно в Chrome 80 или Сhrome Сanary.
Ты когда-нибудь использовал оператор &&
как запасной вариант? Это одна из моих любимых функций JavaScript.
В 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.