在 Node.js 中使用 async函数的方法

2024-10-29 21:12:40

1、await 关键字可以被用来等待一个 Promise 被解决并返回其实现的值。如果传给 await 的值不是一个 Promise,那它会把这个值转化为一个已解决的 Promise。

在 Node.js 中使用 async函数的方法

3、Async 函数的最佳实践在 express 中使用 async 函数express 本来就支持 Promise,所以在 express 中使用 async 函数是比较简单的:

在 Node.js 中使用 async函数的方法

5、并行执行比如说正在编写这样一个程序,一个操作需要两个输入,其中一个来自于数据库,另一个则来自于一个外部服务:

在 Node.js 中使用 async函数的方法

7、而有时候,只需要其中最快被解决的 Promise 的返回值——可以使用 Promise.race 方法。错误处理考虑下面这个例子:

在 Node.js 中使用 async函数的方法

9、可是,使用 try-catch 可能会隐藏掉一些重要的异常,比如像系统错误,你可能更想把它再抛出来。关于在什么情况下你应该将错误再次抛出,我强烈建议你去读一下 Eran 的这篇文章。更为复杂的流程控制Caolan McMahon 的 async 是一个出现较早的用于 Node.js 中异步流程控制的库。它提供了一些进行异步操作控制的帮助工具,比如:mapLimit,filterLimit,concatLimit,以及 priorityQueue。如果你不打算重新发明轮子,不想把同样的逻辑自己再实现一遍,并且愿意信赖这个经过实践检验的、每月下载量高达 5000 万的库,你可以结合 util.promisify 简单地重用这些函数:

在 Node.js 中使用 async函数的方法
猜你喜欢