今天是我第一次涉足 nodejs,我特别难以理解以下逻辑的流动方式。逻辑如下:
request({ uri: db.createDbQuery('identifier:abcd1234') },
function(err, response, body) {
response.should.have.status(200);
var search = JSON.parse(body);
search.response.numFound.should.equal(1);
done();
});
});
在更高的层次上,我确实理解的是,正在发出一个 http 请求,并且正在某个时刻调用该函数,该函数正在获取响应并对其执行某些操作。我想了解的是调用的正确顺序以及变量的绑定如何在上述给定的逻辑中发生。编译器如何知道如何将请求的返回值绑定到匿名函数?基本上,我想了解这个片段的幕后工作原理。
谢谢