Async.whilst回调到哪个函数

时间:2015-08-18 03:05:11

标签: node.js

var i = 0;
async.whilst(
    function(){ return i < 5; },

    function(cb) {
        setTimeout(function() {
            console.log(i++);
            cb();
        }, 1000);
    },

    function(err) { console.err("we encountered an error", err); }
);

我在另一个堆栈溢出帖子上看到了这个代码,并且对这个异步调用的语法感到有些困惑。在async中。虽然有一个带参数cb:function(cb)的函数。然后在调用setTimeOut调用cb()之后的函数内部。我的问题是cb()回调的功能是什么?它只是简单地呼唤:

function(){ return i < 5; }

还是再次调用函数(cb)?

1 个答案:

答案 0 :(得分:1)

它回调async的内部函数,它将停止循环(如果cb()传递了错误)或随后将开始循环的另一次迭代。

如果查看the implementationnext变量是传递给迭代器函数的回调函数。