javascript - 如何让我的 console.logs 输出相同的值?

标签 javascript callback

该程序首先输出 0然后189 。我知道这是由于 javascript 异步执行的。使两个日志输出 189 的正确方法是什么? ?不陷入回调 hell ?

roaming = [];

connection.query("SELECT land FROM roaming", function (err, res) {
    if (err) {
        console.log("Error: " + err);
    } else {
        res.forEach(function(entry){
            roaming.push(entry.land);   
        });
        console.log(roaming.length);
    }
});
console.log(roaming.length);

最佳答案

我会使用异步/等待

async function asyncStuff() {  
  //async stuff  
}

await asyncStuff();

关于javascript - 如何让我的 console.logs 输出相同的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43911207/

相关文章:

Objective-C 对象转换为 C 回调函数

javascript - 如何检查某个用户是否选择了其他用户即将选择的项目?

JavaScript : console. 日志调试陷阱,识别误导性打印输出的经验法则

javascript 删除 li 而不删除 ul?

javascript - 使用uzz.js 播放一个又一个声音

ruby-on-rails - rails 阻止在 before_create 回调中创建对象

javascript - 仅在最后返回的回调中执行过程

javascript - 在同一页面上使用 jquery 选择当前 anchor

javascript - PrimeNg 复选框执行函数

javascript - 理解 JavaScript 中的术语迭代器、回调、函数工厂