Вопрос №55637 от пользователя alex_de_suzo в уроке «Promise.all», курс «JS: Асинхронное программирование»

alex_de_suzo

https://ru.hexlet.io/code_reviews/419971 подскажите п-ста что не так,где искать ошибку? И еще вопрос про отладку. Не совсем пойму как мне делать отладку для промежуточных результатов. Подскажите п-ста

3 0

Maksim Litvinov

Добрый день! Для отладки разместите console.log() внутри callback-функций. Тогда придется перейти от сокращенной записи функции к полной, со скобками и return. Сейчас возникает ошибка типизации:

TypeError: stat.isFile is not a function]

Скорее всего, в переменной stat оказывается не объект fs.Stats. Воспользуйтесь отладочной печатью и посмотрите, какие данные содержатся в этой переменной.

0

alex_de_suzo

Максим Литвинов, отладочная печать показывает что там содержится промис. Я как понимаю проблема именно в 12 строчке. Скорее всего, я неправильно использую метод fs.stat?

0

Maksim Litvinov

Функция fs.stat() тоже возвращает промис, поэтому в переменной result оказывается массив промисов. Пробегитесь еще раз по теории этого урока, обратите внимание на первый абзац:

Промисы, как и колбеки, позволяют выполнять асинхронные операции параллельно. Причём умеют делать это в автоматическом режиме, без ручного отслеживания окончания одной из операций. Для этого достаточно собрать массив из промисов и передать их в функцию Promise.all. В результате вернётся обычный промис, на основе которого можно строить дальнейшую цепочку. Данными в первом then будет массив с данными всех выполненных операций.

0

Используйте Хекслет по максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Даю согласие на обработку персональных данных, соглашаюсь с «Политикой конфиденциальности» и «Условиями оказания услуг»

Рекомендуемые программы

С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.

Иконка программы Фронтенд-разработчик
Профессия
Разработка фронтенд-компонентов веб-приложений
1 июня 10 месяцев
Иконка программы Python-разработчик
Профессия
Разработка веб-приложений на Django
1 июня 10 месяцев
Иконка программы PHP-разработчик
Профессия
Разработка веб-приложений на Laravel
1 июня 10 месяцев
Иконка программы Node.js-разработчик
Профессия
Разработка бэкенд-компонентов веб-приложений
1 июня 10 месяцев
Иконка программы Fullstack-разработчик
Профессия
Новый
Разработка фронтенд и бэкенд компонентов веб-приложений
1 июня 16 месяцев
Иконка программы Верстальщик
Профессия
Вёрстка с использованием последних стандартов CSS
в любое время 5 месяцев
Иконка программы Java-разработчик
Профессия
Разработка приложений на языке Java
1 июня 10 месяцев
Иконка программы Разработчик на Ruby on Rails
Профессия
Создает веб-приложения со скоростью света
1 июня 5 месяцев