JavaScript 中的回调函数参数来源
JavaScript 中的回调函数,正如您所提到的,在作为参数传递给其他函数后执行。然而,回调函数中参数的来源可能会令人困惑。
在提供的 Node.js 示例中:
router.get('/', function(req, res){ res.render('index', {}); });
变量 req 和 res 在回调时填充函数被调用。这个概念类似于非回调函数中参数的传递方式。
考虑这个非回调函数:
function add (a, b) { return a + b }
在这个例子中,我们知道 a 和 b 来自函数的调用,例如 add(1,2).
同样,回调函数在调用时会接收其参数。对于 router.get,它会在调用时将请求和响应对象传递给回调函数。
为了说明这一点,请考虑 router.get 的假设定义:
router.get = function(endpoint, cb){ //do something var request = {} var response = {} cb(request, response) // invocation time }
在提供的示例中,Node.js 负责在调用 .get 时将请求和响应传递给回调函数。
以上是## JavaScript 中的回调函数参数从何而来?的详细内容。更多信息请关注PHP中文网其他相关文章!