如何在node.js中将变量与异步回调同步

时间:2013-02-24 07:25:14

标签: node.js asynchronous

我对以下代码段有疑问。

for(var i=0; i<5; i++){
    http.request(option, function(res){
        console.log(i)
    });
}

这将'i'的值打印为5,五次。有没有办法让'i'的值与函数(res)同步,可以打印0,1,2,3,4

1 个答案:

答案 0 :(得分:2)

您必须为变量指定正确的范围。尝试这样的事情:

for(var i=0; i<5; i++){
    (function(key) {
        http.request(option, function(res){
            console.log(key)
        });
    })(i);
}