javascript - 使用 await 和 async 承诺作用域
问题描述
var accountA;
var accountB;
accounts = async () => {
accountA = await server.loadAccount(Apub)
console.log(accountA)
accountB = await (server.loadAccount(Bpub))
}
accounts()
console.log(accountA);
1) Apub 是我已经声明的公钥
2)当我打印
账户A
在函数内部,它向我显示来自 accountA 的完整详细信息
3)当我在函数之外执行console.log时,输出是
不明确的
4)我已将函数外部的变量声明为全局范围
请帮我
解决方案
尽管您await
在函数内部使用,但您不会等到它在调用时得到响应,accounts
这是一个异步函数
var accountA;
var accountB;
accounts = async () => {
accountA = await server.loadAccount(Apub)
console.log(accountA)
accountB = await (server.loadAccount(Bpub))
}
accounts().then(() => {
console.log(accountA);
})
如果您在异步函数中有上述代码,那么您也可以使用accounts
await
await accounts()
推荐阅读
- javascript - 自动垂直滚动,用鼠标中键垂直滚动时很好,但用手机触摸滚动时就不行了
- c# - 当文件很小/空白时保存文件很好,但当文件较大时表示访问被拒绝
- javascript - 挂钩函数构造函数 (JavaScript)
- r - 当行超过某些数字时,R apply 无法获得多个分钟
- javascript - 在 Vue.js 中从 DOM 中删除组件
- python - Pythonic通过str列表对对象列表进行分组的方法
- python - 如何让 mov 功能正常工作
- sql - SQL 显示不等于的记录
- javascript - 无法将用户上传的大文本文件从 Google Scripts Web App(JS 模块)传递到代码模块
- java - 如何使用递归将字符串中的字符大写?