Когда вы работаете с вложенными объектами, может возникнуть ситуация: одного из свойств не существует, и код ломается. Чтобы этого избежать, в JavaScript появилась удобная конструкция — опциональная цепочка.

Что такое ?.?

?. — это оператор, который позволяет безопасно обратиться к вложенному свойству объекта. Если какого-то промежуточного свойства нет, возвращается undefined вместо ошибки.

Пример без опциональной цепочки

Допустим, у нас есть объект с информацией о водителе:

А если у водителя нет машины?

Как спасает ?.

С опциональной цепочкой ваш код не упадёт:

Аналогия из жизни

Представьте, вы спрашиваете: «У Анны есть машина? А модель?» — если она не водит авто, вы не получаете ошибку, просто узнаёте: «Нет машины».

Где ещё работает ?.

1. Доступ к методам

2. Доступ к элементам массива

Важный момент

Вы не можете использовать ?. при присваивании — только для чтения:

Опциональная цепочка — мощный инструмент для безопасного доступа к свойствам. Она избавляет от длинных проверок и делает код чище и стабильнее. Особенно полезна, если вы работаете с внешними данными, где структура может быть не гарантирована.