?.()Оператор опциональной цепочки ?.() используется для безопасного вызова функции, которая может не существовать. Вместо того чтобы выбросить TypeError, он возвращает undefined, если целевое значение равно null или undefined.
obj.method?.()
method не равен null или undefinedundefinedconst obj = {
greet: () => "Hello!"
};
obj.greet?.(); // "Hello!"
obj.farewell?.(); // undefined — ошибка не выброшена
Опциональная цепочка также работает с динамическим доступом к свойствам:
obj?.[key]()
Это полезно, когда имя свойства хранится в переменной или когда сам объект может быть null или undefined.
Используй ?.() для предотвращения ошибок во время выполнения при вызове опциональных или условно определённых функций — код становится надёжнее без лишних проверок через if.
Оператор опциональной цепочки ?.() возвращает undefined при попытке вызвать функцию, которая не существует, вместо того чтобы выбросить TypeError.
Новый — ещё не проверен сообществом
Вы