📜  JavaScript |承诺 resolve() 方法

📅  最后修改于: 2022-05-13 01:56:40.969000             🧑  作者: Mango

JavaScript |承诺 resolve() 方法

Promise是一个对象,表示用户任务的完成或失败。 JavaScript 中的 Promise 可以处于待处理、已完成或已拒绝三种状态。
在 JavaScript 中使用 Promise 的主要优点是,用户可以在 Promise 被拒绝或履行的情况下为 Promise 分配回调函数,也可以通过使用 Promise 轻松处理所有异步事件或即将到来的数据的控制流。顾名思义,一个承诺要么被遵守,要么被打破。因此,承诺要么完成(保留),要么被拒绝(破坏)。
承诺 resolve() 方法:
JS 中的 Promise.resolve() 方法返回一个用给定值解析的 Promise 对象。三种情况中的任何一种都可能发生:

  • 如果该值是一个承诺,则返回承诺。
  • 如果值有一个附加到承诺的“then”,那么返回的承诺将跟随那个“then”直到最终状态。
  • 履行其价值的承诺将被返回。

句法:

Promise.resolve(value);

参数:
本 Promise 要解决的值。
返回值:
要么返回以其值实现的承诺的承诺。
例子:

javascript


Javascript
Promise.resolve(17468).then((value) => console.log(value));
 
// This code is contributed by Aman Singla....


javascript


javascript


输出:

17468

上面的例子是使用旧版本的方法制作的,我们也可以使用最新的基于箭头函数的方法,并且尽量避免编写 var 数据类型,因为它可能会混淆其他几个变量并可能产生不正确的结果。以下是上述方法的最短方法。

以下是显示上述方法的另一个版本的代码片段 -

Javascript

Promise.resolve(17468).then((value) => console.log(value));
 
// This code is contributed by Aman Singla....

输出:

17468

解析数组:在下面的示例中,我们将使用一个名为 setTimeout() 的计时器函数将负责执行在该计时器函数内部传递的 resolve() 内部传递的值。

javascript


输出:

45 

解析另一个 Promise:在下面的示例中,我们将在另一个新创建的 Promise 中解析第一个 Promise,其中我们定义了一个计时器函数(setTimeout)。

javascript


输出:

3126 

支持的浏览器:

  • 谷歌浏览器 6.0 及以上
  • Internet Explorer 9.0 及更高版本
  • Mozilla 4.0 及更高版本
  • Opera 11.1 及更高版本
  • Safari 5.0 及以上

JavaScript 以网页开发而闻名,但它也用于各种非浏览器环境。您可以按照这个 JavaScript 教程和 JavaScript 示例从头开始学习 JavaScript。