javascript – Node.js的循环模块

前端之家收集整理的这篇文章主要介绍了javascript – Node.js的循环模块前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

几分钟前我问过循环,见Asynchronous for cycle in JavaScript.

这一次,我的问题是 – Node.js有什么模块吗?

for ( /* ... */ ) {

  // Wait! I need to finish this async function
  someFunction(param1,praram2,function(result) {

    // Okay,continue

  })

}

alert("For cycle ended");
最佳答案
是不是很难将这些东西转移到模块中?

编辑:更新了代码.

function asyncLoop(iterations,func,callback) {
    var index = 0;
    var done = false;
    var loop = {
        next: function() {
            if (done) {
                return;
            }

            if (index < iterations) {
                index++;
                func(loop);

            } else {
                done = true;
                callback();
            }
        },iteration: function() {
            return index - 1;
        },break: function() {
            done = true;
            callback();
        }
    };
    loop.next();
    return loop;
}

exports.asyncFor = asyncLoop;

还有一个小测试:

// test.js
var asyncFor = require('./aloop').asyncFor; // './' import the module relative

asyncFor(10,function(loop) {    
        console.log(loop.iteration());

        if (loop.iteration() === 5) {
            return loop.break();
        }
        loop.next();
    },function(){console.log('done')}
);

休息取决于你,不可能使这100%通用.

原文链接:https://www.f2er.com/js/429405.html

猜你在找的JavaScript相关文章