Map / Reduce示例......这是正确的吗?

时间:2012-12-05 13:24:59

标签: javascript mongodb callback mapreduce

我不止一次看过以下reduce函数作为mongodb的mapreduce用法示例:

function reduce(key, values) {
    var result = {count:0};
    values.forEach(function(value) {
        result.count += value.count;
    });
    return result;
}

但这让我非常奇怪。使用.forEach()方法完成迭代,该方法使用回调函数进行计数。但是,我们立即返回结果;

有时我们会在回调遍历值之前返回结果变量吗?

我认为回调的目的是在主控制流正常继续时将它委托给(可能)不同的线程。

1 个答案:

答案 0 :(得分:3)

forEach不是异步的 return语句只会在forEach完成后执行。