RequestJS如何实际处理其回调?

时间:2014-06-06 14:01:58

标签: javascript node.js

我可以说是NodeJS中的一个非常大的菜鸟,所以对于除了我以外的任何人来说这可能是显而易见的;)
阅读https://github.com/mikeal/request/blob/master/request.js#L71我不知道回调参数的传递方式(https://github.com/mikeal/request#requestoptions-callback)。我想这与在arguments中处理的Request.prototype.init有关,但在进行简短测试时我无法重现该行为:

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
{}

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

1 个答案:

答案 0 :(得分:3)

当您需要request时导出的实际函数是包index.js文件中的wrapper function,它初始化options对象,然后使用它来实例化{的实例{1}}。当您考虑使用该函数不需要Request关键字时,这应该很明显,即使它显然是构造函数。