Вступить в клуб →
лёгкаявопросАсинхронность и event loop

Забытый await: что попадёт в лог

Фрагмент из сервиса на чистом JavaScript:

async function getUser(id) {
  return repo.findById(id); // репозиторий возвращает объект пользователя
}

const user = getUser('42');
console.log(user.email);

Пользователь с таким id в базе есть, запрос отрабатывает успешно. Что напечатает console.log?

  • Адрес почты пользователя: `async` внутри функции дожидается результата сам
  • `undefined`, потому что в `user` лежит Promise, а поля `email` у него нет
  • Ошибку `TypeError: Cannot read properties of undefined`
  • `[object Promise]` — строковое представление промиса

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела