JavaScript 中的 Promise 是什么?2025年3月17日 | 阅读 3 分钟 JavaScript 中的 Promise 乍一看可能有点复杂,但实际上它很简单,并非高深莫测。在 JavaScript 中,Promise 就像我们在现实生活中做出的承诺一样,表明你致力于做某事。 例如,我承诺在数学课上取得好成绩,那么这个 Promise 就有两个结果:要么 fulfilled(或 resolved),要么 not fulfilled(或 rejected)。所以如果我取得了优异的成绩,Promise 就 resolved 了,但如果我未能取得好成绩,它就不会 resolved,因为我未能信守承诺。 然而,在 JavaScript 中,Promise 有三个结果:Promise 获得 resolved,获得 rejected,或者处于 pending 状态,这意味着 Promise 尚未完成,但可能稍后会完成,所以它尚未被 rejected,处于 pending 状态。 ![]() 让我们用另一个例子来理解 JavaScript 中 Promise 的概念 假设我们使用 Promise 发出请求从服务器获取数据。如果我们成功地从服务器获取了数据,那么 Promise 将被视为成功 resolved(或 completed);但如果我们由于任何原因未能从服务器获取数据,则意味着 Promise 被 rejected 或未 completed。 JavaScript 中 Promise 的语法 让我们看看 如何在 JavaScript 中创建和使用 Promise? 首先,我们必须使用构造函数创建一个 Promise。 如前所述,Promise 有两个参数,我们已经看过 Promise 的语法。 这是最后一个部分,即条件。如果满足条件,Promise 将 resolved;否则,Promise 将 rejected。 所以,这是我们的第一个 Promise。现在让我们使用它。 then() 方法 正如我们上面讨论过的,对于 Promise,有两种主要情况:一种是 resolved,另一种是 rejection。当 Promise 获得 resolved 时,接下来会发生什么取决于我们想如何处理 resolved 的 Promise。 这个 ".then();" 方法仅在 Promise 获得 resolved(成功 completed)时调用,并且其中传递的内容将被显示。例如,我们可以为此传递一条消息给用户。 .catch(); 方法 当 Promise 被 rejected(或失败)时,会调用此方法。我们也可以为此传递一条消息给用户。我们可以在 "then ()" 方法之后编写 catch 方法。 所以,如果 Promise 获得 resolved,那么我们将在屏幕上看到传递到 ".then()" 方法中的消息;但如果 Promise 被 rejected,那么我们将看到传递到 ".catch()" 方法中的消息。这意味着在两种情况下,我们都会在屏幕上看到不同的消息。 我们可以通过下面的例子更容易地理解 Promise 的工作原理 程序 程序解释 在上面的程序中,我们使用构造函数创建了一个 Promise,并传递了两个参数 resolve 和 reject。在 Promise 定义内部,我们还创建了一个变量 "condition" 并为其赋值 9。此外,使用 (if) 语句,我们检查了变量的值。如果满足条件,将执行 "if" 部分,Promise 将 resolved(then() 方法也将被调用);如果条件不满足,将执行 else 部分,Promise 将 rejected(then catch() 将被执行)。 输出 要查看控制台中的输出,请按 "f12" 键在 网页浏览器 中打开检查模式。 ![]() 注意:如果你想执行 Promise 的 else 部分,可以通过将条件更改为 true 或 false 来修改程序代码。 |
JavaScript作为一种广泛且性质多样的编程语言,包含了大量将对象转换为数组的特性。这些方法在语言本身中是预定义的。让我们来看看在JavaScript中将对象转换为数组的不同方法。要转换一个...
阅读 4 分钟
当您处理网站和数据库时,CSV 文件是计算机科学中必不可少的一部分。在某些情况下,浏览器中可能有一些用户数据,您希望让他们下载这些数据。在这种情况下,CSV 文件很有帮助...
阅读 6 分钟
oninput 函数在用户在 html input 标签上输入文本、选择或输入数据时起作用。当您输入数据时,该函数会根据需要使用 javascript 更改功能。当输入完成后(插入数据)或移开焦点后……
阅读 6 分钟
我们可以使用 javascript indexedDB 函数删除数据库中的单个或多个数据。我们可以使用键值或 ID 删除整个数据库行。删除 javascript indexedDB 中数据的过程 下面的步骤有助于删除信息。要删除...
阅读 3 分钟
如果你知道如何在 JavaScript 代码中设置密码,那么理解如何切换密码的可见性就变得容易了。在这里,在本节中,我们将学习如何通过实现...
阅读 3 分钟
显示给定元素的 y 坐标或高度。只读的 MouseEvent offsetY 属性返回目标元素的鼠标光标的 y 坐标。我们可以在 div 标签、网页或其他元素上添加事件函数来显示 y 坐标。语法以下...。
阅读 3 分钟
在 JavaScript 中,italics() 方法用于显示斜体字符串。它使文本类似于 <i> </i>(斜体标签)中的文本。因为 italics() 方法是字符串对象的方法,所以它必须通过特定实例调用...
阅读 2 分钟
JavaScript 是最知名、使用最广泛的编程语言之一。它的发展速度比任何其他语言都快,Netflix、PayPal 和 Walmart 等大公司围绕 JavaScript 构建内部应用程序。通过学习……,这是一个获得一份出色工作的绝佳机会。
11 分钟阅读
在学习不同的编程语言时,我们都会听说并学习递归概念。在 JavaScript 中,我们也有递归的概念,其中我们使用了递归函数。因此,在本节中,我们将学习递归,并将看到...
阅读 6 分钟
JavaScript 的 previousElementSibling 属性 JavaScript 的 previousElementSibling 属性用于显示所需或输入节点的前一个节点作为 Node 对象。如果给定节点是列表的初始元素,则节点对象显示为 null。previousElementSibling 属性用于...
阅读 3 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India