gpt4 book ai didi

javascript - Node.js - 典型的回调问题

转载 作者:太空宇宙 更新时间:2023-11-04 02:50:52 26 4
gpt4 key购买 nike

我在代码中添加了一些注释,以便您可以看到问题是什么,基本上...我希望货币在 db.where() 函数之后“可用”,以便可以在 if 语句中使用。毫无疑问,这很容易解决,但我很糟糕。感谢您抽出时间。

db.where('users', {name: user.username}).then(function(result) {
var currency = result.items[0].currency;
console.log(currency);
});
console.log("Program gets to this point without error.");
console.log(currency); // Doesn't work as currency is no longer defined.
if (typeof args[2] == 'number' && args[2] <= currency) {
var betOkay = true;
console.log("betOkay is " + betOkay);
}

最佳答案

您必须将代码移至回调或从回调中调用的另一个函数中。回调是异步执行的,因此并不是 currency 不再定义,而是它尚未定义并且不在同一范围内。

关于javascript - Node.js - 典型的回调问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31035633/

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