Задать вопрос
@Artem0071
Безработный mr. Junior

Что означает «?» в записи user?.name (вопрос к вопросу ->)?

Увидел в пособии такой код:
@Component({
    selector: 'my-app',
    template: `<div>
                    <p>Имя пользователя: {{user?.name}}</p>
                    <p>Возраст пользователя: {{user?.age}}</p>
               </div>`,
    providers: [HttpService]
})

Собственно он работает, но что означают эти вопросы?
  • Вопрос задан
  • 247 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 2
@lega
Ответ Alexander Belov не точен.
Тут не идет проверка наличия name или age, проверяется если user != null, иначе user не может содержать вообще никаких параметров.

т.е. user?.name можно "разложить" в user==null?'':user.name
без этого будет ошибка:
user = null
user.name
VM111:1 Uncaught TypeError
Ответ написан
AlexanderBelov
@AlexanderBelov
Frontend developer
Опциональный параметр. Означает, что у user может иметься, а может не иметься name или age.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы