所以我试图围绕如何将变量/数据传递给回调类型,就像请求如何做到这一点:
var request = require('request');
request('http://www.google.com', function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body) // Show the HTML for the Google homepage.
}
})
开发人员如何将错误,响应和正文传递给用户使用的回调?例如,假设我有一个基本的主要功能:
function main(_arg1, _arg2, callback) { ... }
当我打电话给它时,我会做类似
的事情main('test1', 'test2', function(a, b){ console.log(a+b); }
正确?那么我如何将_arg1
和_arg2
传递给回调,以便输出test1test2
之类的结果?
我尝试查看stackoverflow但我无法找到与此相关的任何内容,所以如果这是重复的,我很抱歉。
但是,任何帮助和/或解释将不胜感激! :)
答案 0 :(得分:3)
当你调用回调时,你只需将它们作为参数传递。这是一个例子:
// define a function that accepts a callback argument
function callMeBackPlease(x, y, callback) {
// call the callback and pass it the desired arguments
callback(x+y, x/y);
}
// call the function and pass it a callback function
callMeBackPlease(3, 5, function(sum, div) {
console.log(sum, div); // outputs 8, 0.6
});
回调只是一个功能。并且,在Javascript中,您可以在调用其他函数时将函数作为参数传递,并且传递给它的函数可以使用任何适当的参数调用该回调函数。