RequestJS实际上是如何处理回调的

How does RequestJS actually process its callback?

本文关键字:处理 回调 实际上 何处理 RequestJS      更新时间:2023-09-26

我可以说是一个相当大的NodeJS新手,所以这可能是显而易见的其他人除了我;)
阅读https://github.com/mikeal/request/blob/master/request.js#L71我不知道回调参数是如何传递的(https://github.com/mikeal/request#requestoptions-callback)。我猜这与Request.prototype.init中处理的arguments有关,但是在做简短的测试时,我无法重现这种行为:

var test = function(a) {this.init(a);}
test.prototype.init = function(a){
  for(var i in arguments) console.log(arguments[i]);
}
new test('bla', 'blub');

搜索结果

bla
{}

所以我真的不知道回调是如何设置的,我很想知道。

当您需要request时导出的实际函数是包index.js文件中的包装器函数,它初始化options对象,然后使用它来实例化Request的实例。当您考虑不需要new关键字来利用该函数时,这一点应该是显而易见的,即使它显然是一个构造函数。