javascript - node.js 异步系列函数的参数

标签 javascript node.js async.js

我需要做如下代码:

function taskFirst(k, v) {
    console.log(k, v);
}

function taskSecond(k, v) {
    console.log(k, v);
}

function run() {
    var g1 = "Something";
    var g2 = "Something";
    var g3 = "Something";
    var g4 = "Something";

    async.series(
        [
            taskFirst(g1, g2),
            taskSecond(g3, g4)
        ],
        function(error, result){

        }
    );
}

传递自定义变量和async.js回调函数的正确方法是什么?

最佳答案

你可以这样做:

function taskFirst(k, v, callback) {
    console.log(k, v);

    // Do some async operation
    if (error) {
        callback(error);
    } else {
        callback(null, result);
    }
}

function taskSecond(k, v, callback) {
    console.log(k, v);

    // Do some async operation
    if (error) {
        callback(error);
    } else {
        callback(null, result);
    }
}

function run() {
    var g1 = "Something";
    var g2 = "Something";
    var g3 = "Something";
    var g4 = "Something";

        async.series(
            [
                // Here we need to call next so that async can execute the next function.
                // if an error (first parameter is not null) is passed to next, it will directly go to the final callback
                function (next) {
                    taskFirst(g1, g2, next);
                },
                // runs this only if taskFirst finished without an error
                function (next) {
                    taskSecond(g3, g4, next);    
                }
            ],
            function(error, result){

            }
        );
}

关于javascript - node.js 异步系列函数的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21288014/

相关文章:

javascript - 如何使用 Underscore js 模板将数组转换为 HTML 表格?

javascript - Node.js - 如何控制异步回调序列?

javascript - 使用 JS 和 PHP 动态更新 CSS 文件源

javascript - 使用 NodeJS 提供内容,但响应类型始终为 ""

javascript - 我如何 'swap' 对我的应用程序中的 react /插件使用react?

javascript - 嵌套 async.each : "Error: Callback was already called"

javascript - Async.js 设计模式

javascript - 如何将对象传递给客户端 Javascript - NodeJS 和express

node.js - superagent相对路径服务器端

javascript - Node.JS async.parallel 混淆 | async.map 返回什么