Оператор Optional Chaining (?.) - это новый оператор в JavaScript, который позволяет безопасно обращаться к свойствам и методам объектов, которые могут быть неопределенны или равны null или undefined.

Оператор Optional Chaining позволяет избежать ошибок типа “Cannot read property ‘propertyName’ of undefined”, которые могут возникнуть при попытке обратиться к свойству объекта, которое не существует.

Синтаксис оператора Optional Chaining:

object?.property
object?.method()
  • object - объект, к которому нужно обратиться.
  • property - свойство объекта, к которому нужно обратиться.
  • method() - метод объекта, к которому нужно обратиться.

Пример использования оператора Optional Chaining:

const person = {
  name: "John",
  address: {
    city: "New York",
    country: "USA",
  },
}
 
const country = person.address?.country
 
console.log(country) // Вывод: "USA"
 
const street = person.address?.street
 
console.log(street) // Вывод: undefined

В этом примере, мы используем оператор Optional Chaining для безопасного доступа к свойству country объекта address внутри объекта person. Результатом обращения к свойству country является значение “USA”. Затем мы используем оператор Optional Chaining для безопасного доступа к свойству street, которое не существует в объекте address. Результатом обращения к свойству street является значение undefined.

Оператор Optional Chaining также можно использовать для безопасного вызова методов объектов:

const person = {
  name: "John",
  getAddress() {
    return this.address
  },
}
 
const city = person.getAddress()?.city
 
console.log(city) // Вывод: undefined

В этом примере, мы используем оператор Optional Chaining для безопасного вызова метода getAddress() объекта person. Если метод getAddress() возвращает undefined, то результатом вызова метода будет также undefined. Затем мы используем оператор Optional Chaining для безопасного доступа к свойству city, которое не существует в объекте address. Результатом обращения к свойству city является значение undefined.

Оператор Optional Chaining - это удобный и безопасный способ обращения к свойствам и методам объектов в JavaScript, который позволяет избежать ошибок при обращении к неопределенным значениям. Он доступен в современных версиях JavaScript.


Назад