1) Что такое цепочка? Анс) Согласно официальным документам MDN, необязательный оператор цепочки (?.) Позволяет прочитать значение свойства, расположенного глубоко в цепочке подключенных объектов без необходимости прямоктируемого, что каждая ссылка в цепочке действительна
Примечание: Дополнительное цепочка? Останавливает оценку, если значение раньше? не определен или нулевой и возвращает undefined.
2) В какую версию JavaScript дополнительных цепочек вводится?
ANS) Ecmascript 2020
3) Пример
позволяет нам один объект, как ниже
const user = {
name: 'Test User',
address: {
city: 'mumbai',
}
};
Если мы попробуем получить доступ к User.address.city = > Мы получим Мумбаи, но если мы доступм к чему-то вроде этого
user.jobtitle.name => Это приведет к ошибке, поскольку Jobtitle не является свойством пользователя, и мы пытаемся доступить доступом имен свойства undefined так раньше?, Оператор нам нужно сделать что-то вроде ниже, чтобы избежать этой ошибки
if(user.jobtitle && user.jobtitle.name) {
// code related to use of user.jobtitle.name
}
Этот код может быть минимизирован, как показано ниже с помощью?, оператор
if(user.jobtitle?.name) {
// code related to use of user.jobtitle.name
}
Официальная документация
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Optional_chaining
Оформить заказ больше таких вопросов
Оригинал: “https://dev.to/passionate_coder/javascript-interview-questions-optional-chaining-57mn”