JavaScript Promise 链式调用

2025年4月16日 | 阅读 4 分钟

Promise 链式调用是一个直接的想法,它允许我们在 .then() 方法中初始化第二个 promise,然后执行我们的结果。早期 promise 返回的值随后被函数捕获。

有时我们需要运行两个或更多相关的异步操作,其中第一个操作以先前操作的结果开始。

当我们循序管理多个异步任务时,Promise 会派上用场。我们为此采用了 Promise 链式调用。通过 then()、catch() 和 finally 方法,我们可以在 Promise 完成后执行一个操作。

链式调用中 Promise 的语法

第一种语法

有时我们希望连续执行几个异步任务。此外,我们必须将前一个阶段的结果传输到下一个阶段。在这种情况下,我们可以使用以下语法:

第二种语法

如果我们需要将上一个任务的结果传递给下一个任务而无需传递结果,请使用以下语法:

如何操作 Promise 链式调用

该语法展示了 JavaScript Promise 链式调用的操作和工作过程。

说明

  • Promise () 函数与 then() 方法一起使用。
  • 该方法显示控制台选项卡以获取输出。
  • 第二个 Promise 函数位于第一个 then() 函数内部。
  • 我们可以通过 resolve 和 reject 操作来获取输出数据和功能。

示例

以下示例展示了 Promise 函数的链式调用操作。以下示例避免了多个处理程序并使用了 Promise 链式调用。

示例 1

基本的 Promise 链式调用函数显示两个 Promise 值作为输出。我们使用三个 Promise 和 then() 方法。

输出

图片显示了 Promise 链式调用函数的输出。

Javascript promise chaining

示例 2

JavaScript Promise 链式调用函数显示了具有操作的多个 Promise 值作为输出。我们使用各种 Promise 和 then() 方法,并根据需要设置时间。

输出

图片显示了 Promise 链式调用函数的输出。

Javascript promise chaining

示例 3

JavaScript Promise 链式调用函数显示了具有操作的多个 Promise 值作为输出。我们使用各种 Promise 和 then() 方法,并根据需要设置时间。

输出

图片显示了 Promise 链式调用函数的输出。

Javascript promise chaining

Promise 链式调用的多个处理程序

当我们反复在一个 Promise 上调用 then() 方法时,它不适用于 Promise 链式调用。一个 Promise 有几个处理程序。这些处理程序之间没有任何连接。此外,与 Promise 链不同,它们是独立执行的,并且不将输出从一个传递到另一个。

示例

以下示例对多个处理程序使用单个 Promise。输出显示每个处理程序的初始 Promise 值。

输出

图片显示了 Promise 链式调用函数的输出。

Javascript promise chaining

结论

Promise 链式调用使用 "then()" 方法显示多个输出。该方法使用 Promise 变量。它通过方程适用于单个输入和多个输出。