javascript - 是否可以在异步函数之外使用 await

标签 javascript node.js asynchronous async-await ecmascript-2017

这是我在nodejs中的简单函数

const myFunction = async() => {
    const exercises = await Exercise.find({ workoutId })
    return exercises
}

const value = await myFunction()

但是当我在异步函数之外执行 await 时它会抛出错误

 await is a reserved word

现在如何在异步函数之外等待值?我需要使用回调还是 .then?那async and await有什么用呢?

最佳答案

您不能在异步函数外使用 await。 “绕过”此限制的一个技巧是使用异步 IFEE:

const myFunction = async() => {
    const exercises = await Exercise.find({ workoutId })
    return exercises
};

(async () => {
    const value = await myFunction()
})()

关于javascript - 是否可以在异步函数之外使用 await,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52580821/

相关文章:

c# - 如何知道浏览器是否有 PDF 查看器?

javascript - 在 JavaScript 中动态创建 JSON 对象

javascript - Chartjs 与 Node.js : Unexpected token <

c# - Parallel.Foreach 和 Task 冲突

c# - 具有异步操作的 ASP.NET MVC

javascript - 如何使用 wordpress 在点击时播放 GIF(如 9GaG.com)?

javascript - 本地和远程站点上的 Node.js/Socket.io Access-Control-Allow-Origin 错误

json - 查询特定条件的json数据

node.js - 连接查询响应的序列化格式

java - 使 RxJava 运算符链并发