Так что же такое обратный вызов в NodeJ?
обратный вызов — это функция, которая передается в качестве параметра другой функции. Таким образом, обратный вызов — это функция как параметр
Почему обратный вызов важен в Nodejs?
NodeJs, будучи асинхронной платформой, не ждет завершения таких операций, как файловый ввод-вывод — Nodejs использует обратные вызовы. Обратный вызов — это функция, вызываемая при завершении данной задачи; это предотвращает любую блокировку и позволяет тем временем выполнять другой код.
Хорошо, давайте углубимся в код.
1. Создайте функцию с именем root
В корневой функции мы принимаем параметр с именем CallFunction
‹ — это функция обратного вызова. Как видите, в блоке try мы передаем значение null
в первом параметре, а в блоке catch мы передаем значение error
, но почему это значение?
Функция
callback
показывает причину этого: она позволяет пользователю легко узнать, произошла ли ошибка. Если быnull
не был первым аргументом, переданным в случае успеха, пользователю нужно было бы проверить возвращаемый объект и определить, является ли объект ошибкой, — гораздо более сложный и менее удобный подход.
Примечание. обратный вызов — это последний параметр, а первый параметр обратного вызова — этоerror
значение.
2. Создайте функцию, которую мы передадим в корневую функцию
Как видите, в функции callme
мы сначала оцениваем значение err
, прежде чем переходить к следующему коду. Если это не ошибка, то мы распечатаем данные.
3. Запустите корневую функцию
root(callme)
При запуске программы корневая функция, которой в качестве параметра была передана callme
function, будет выглядеть так.
Результат:
1 2 data: more than 2 character
Программа сначала запустит задачу в root
function, затем вызовет функцию обратного вызова (callme).
Ссылка: