NodeJS变量作用域的循环问题,表达/猫鼬

时间:2018-09-13 14:32:59

标签: javascript node.js express mongoose

我的设置:NodeJS,express,猫鼬

var i;
for(i = 0; i < results.length; i++){
    console.log("out: "+i);
    RegionData.findOne({'rid': results[i].region_id}, function (err, product) {
        if (product) {
            console.log("in: " + i);
        }
    });
}

输出:

out: 0
out: 1
out: 2
out: 3
in: 4
in: 4
in: 4
in: 4

我的期望输出:

out: 0
in: 0
out: 1
in: 1
out: 2
in: 2
out: 3
in: 3

我不知道为什么它不是我期望的输出,它先完成“输出:i”,然后完成“输入:i”。 .findOne是否有问题?

0 个答案:

没有答案