Вопрос №55966 от пользователя Андрей Шляпников в уроке «Event Loop», курс «JS: Асинхронное программирование»

JS: Асинхронное программирование
Event Loop (архив)

Андрей Шляпников

Добрый день! Спасибо очень интересное задание! По началу не мог разобраться как передавать данные на уровень ниже, но все таки потом додумался, более внимательно изучив документацию. По началу конечно смутило в этом примере что за callback который мы передаем в каждую функцию:

async.waterfall([
    function(callback) {
        callback(null, 'one', 'two');
    },
    function(arg1, arg2, callback) {
        // arg1 now equals 'one' and arg2 now equals 'two'
        callback(null, 'three');
    },
    function(arg1, callback) {
        // arg1 now equals 'three'
        callback(null, 'done');
    }
], function (err, result) {
    // result now equals 'done'
});

Но если я все правелно понял, то это механизм самой функции waterfall, чтобы передовать данные на уровень ниже, то есть на первом уровне мы ёе инициализируем, а потом просто прокидываем данные?

1 0

Maksim Litvinov

Добрый день, Андрей! Да, вы правильно поняли. Первым аргументом функция waterfall принимает массив задач - асинхронных функций. Когда очередная функция завершает выполнение, вызывается callback, куда передаются ошибка и данные из предыдущей функции. Так эти данные попадают в следующие функции.

0

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

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

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

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

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

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

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