繁体   English   中英

如何在 Node.js 中的异步 function 之外使用变量?

[英]How can I use a variable outside an async function in Node.js?

我正在尝试在我的代码中的其他地方使用变量bida 例如,当我尝试创建变量mida时。 有没有办法做到这一点,而无需将所有内容都嵌套在getFX() function 中? 我知道这是一个异步 function 问题,但我该如何解决?

const fetch = require("node-fetch");

async function getFX() {

let bida;

  try {

    var req = await fetch('https://economia.awesomeapi.com.br/all/USD-BRL');
    var response = await req.json()


   bida = await response.USD.bid;
   aska = await response.USD.ask;

    console.log(bida, aska)

  } catch (e) {
    // handle error
    console.error(e)
  }
}

getFX()

var mida = bida + 1;

console.log (mida);

您应该在 getFX() function 之外初始化 bida 变量,以便能够在该文件的其他位置访问它,并且仅在 getFX 解析 using.then() 时才设置 mira 变量的值,以便能够使用 bida 的值因为 getFX 是异步 function。 我是这样做的:

const fetch = require("node-fetch");

let bida;

async function getFX() {


    try {

       var req = await fetch('https://economia.awesomeapi.com.br/all/USD-BRL');
       var response = await req.json()


       bida = await response.USD.bid;
       aska = await response.USD.ask;

       console.log(bida, aska)

    } catch (e) {
        // handle error
        console.error(e)
    }
}


getFX().then(() => {
    var mida = bida + 1;
    console.log (mida);
})

希望能帮助到你 !

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM