gpt4 book ai didi

javascript - 在异步函数调用之外使用变量

转载 作者:行者123 更新时间:2023-12-03 03:39:14 25 4
gpt4 key购买 nike

我在这里看到了很多帖子,展示了如何使用回调进行异步函数调用。我已经让它工作了,但是,我似乎无法找到如何利用从函数外部的函数检索的变量。

        var json = JSON.parse(body);
var accountID = json.accountId;
var getMatchData;

getRecentMatchData(accountID, function(err, res) {
getMatchData = res;
//console.log(res);
});
console.log(getMatchData);

我正在尝试使用 getMatchData 传递到我的 app.post 中的其他函数,但它打印出来为未定义。如何访问此变量以在异步方法之外使用?我要使用另一个回调吗?

最佳答案

在这种情况下,您将不得不使用异步 waterfall 之类的东西。最终意味着再次回调。您的示例代码示例太小,无法编写正确的重构,但这会有所帮助。

async.waterfall([
function(callback) {
getRecentMatchData(accountID, function(err, res) {
callback(err, res);
getMatchData = res;
//console.log(res);
})
},
function(getMatchData, callback) {
// getMatchData now equals 'res'
// do what you have to do with getMatchData
callback(null, 'result');
}
], function (err, result) {
// result now equals 'result'
});

关于javascript - 在异步函数调用之外使用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45706960/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com