javascript - Node.js - Javascript - 如何将变量传递给回调函数

标签 javascript node.js callback

我正在使用 Node.js 流,最终在几个地方得到了类似的结果:

var myVariable = 'XXX';
...
.on('end', function() {
    // do something with myVariable
});

函数的行为是相同的,但取决于变量,因此我想将其重构为:

var myVariable = 'XXX';
...
.on('end', myFunction);


function myFunction(param){
    // do something with param
}

如何在调用 .on('end', myFunction); 中传递 myVariable 的值?

最佳答案

您将创建一个返回自定义函数用作回调的工厂。

function myFactory(param) {
    return function(e) {
        console.log( 'param value:', param );
        // do something
    }
}

你可以像这样使用它:

.on('end', myFactory(1));

.on('end', myFactory(2));

如果“end”事件将事件对象之外的一些参数传递给回调函数,请将它们添加到返回函数的参数列表中 (return function(e, foo, bar) { ... )

关于javascript - Node.js - Javascript - 如何将变量传递给回调函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31340766/

相关文章:

javascript - 使用 require 和 node.js 加载远程 js 文件

sql - 如何通过 Node 和 pg 导入 PostgreSQL 数据库转储

c# - 如何检测 Windows 开始菜单/开始屏幕何时打开?

jquery - 将动态变量附加到ajax回调函数

javascript - jQuery 代码未加载

javascript - 未捕获的类型错误 : Cannot read property 'item_name' of undefined

javascript - 如何从 Express 应用程序的服务器端发送 GET 请求查询的响应?

android - 如何使用 MainActivity Listener 消除 NPE?

javascript - browsersync 仅在浏览器是事件窗口时刷新

javascript - 正则表达式获取括号之间的字符串