Использование аргумента функции в модуле Node async - PullRequest
0 голосов
/ 24 ноября 2018

Я изучаю Node.js и создаю небольшой сайт, руководствуясь MDN .

Я достиг места, где используется модуль async .
Этокод

async.parallel({
    book_count: function(callback) {
        Book.countDocuments({}, callback); // Pass an empty object as match condition to find all documents of this collection
    },
    book_instance_count: function(callback) {
        BookInstance.countDocuments({}, callback);
    },
    book_instance_available_count: function(callback) {
        BookInstance.countDocuments({status:'Available'}, callback);
    },
    author_count: function(callback) {
        Author.countDocuments({}, callback);
    },
    genre_count: function(callback) {
        Genre.countDocuments({}, callback);
    }
}, function(err, results) {
    res.render('index', { title: 'Local Library Home', error: err, data: results });
});

};

Этот код подсчитывает количество документов в базе данных.Я не понимаю, что такое аргумент "обратный вызов".В этих свойствах "book_count, book_instance_count, author_count и т. Д." Ничего не отправлено, но все эти функции работают отлично.Пожалуйста, объясните мне, что такое нечетный аргумент "обратный вызов" и как его использовать.

1 Ответ

0 голосов
/ 24 ноября 2018

Функция обратного вызова

Функция обратного вызова - это функция, переданная в другую функцию в качестве аргумента, которая затем вызывается внутри внешней функции для выполнения некоторой подпрограммы или действия.

function greeting(name) {
  alert('Hello ' + name);
}

function processUserInput(callback) {
  var name = prompt('Please enter your name.');
  callback(name);
}

processUserInput(greeting);

https://developer.mozilla.org/en-US/docs/Glossary/Callback_function

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...