找回密码
 免费注册

[TypeScript] ES6 Promise 对象里的 resolve 是什么

[复制链接]
admin 发表于 2024-2-1 00:02:21 | 显示全部楼层 |阅读模式
resolve 是在 Promise 构造函数中使用的一个参数,它是一个函数。当你创建一个新的 Promise 对象时,你会提供一个执行器函数,该函数接收两个参数:resolve 和 reject。
  • resolve: 这是一个函数,当 Promise 成功完成时调用它,并且可以将结果作为参数传递。调用 resolve 会使 Promise 从 “pending” 状态转为 “fulfilled” 状态,并设置 Promise 的结果值。
  • reject: 这也是一个函数,当 Promise 失败时调用它,并且可以将错误或失败的原因作为参数传递。调用 reject 会使 Promise 从 “pending” 状态转为 “rejected” 状态,并设置 Promise 的拒绝原因。
下面是一个基本的 Promise 示例,展示了如何使用 resolve 和 reject:
  1. const myPromise = new Promise((resolve, reject) => {
  2.   const success = true; // 这里只是一个模拟条件

  3.   if (success) {
  4.     resolve('Promise was successful!'); // 成功时调用
  5.   } else {
  6.     reject('Promise failed.'); // 失败时调用
  7.   }
  8. });

  9. myPromise.then(result => {
  10.   console.log(result); // 输出 'Promise was successful!'
  11. }).catch(error => {
  12.   console.error(error); // 如果 Promise 失败,则输出错误
  13. });
复制代码
在这个示例中:
  • 如果 success 为 true,则调用 resolve,并将结果传递给随后的 .then 方法。
  • 如果 success 为 false,则调用 reject,并将错误传递给随后的 .catch 方法。

当你使用 Promise 来处理异步操作时,resolve 和 reject 允许你控制 Promise 的完成或失败,并将结果或错误传递给链中后续的 .then 或 .catch 处理程序。

回复

使用道具 举报

 楼主| admin 发表于 2024-2-1 00:16:47 | 显示全部楼层
  1. const p2 = new Promise(function(resolve,reject){  
  2.     //resolve('success3');
  3.     reject('reject');
  4. });
  5. //异步操作后执行
  6. p2.then(function(value){
  7.     console.log(value);
  8. }).catch(error=>{
  9.     console.log(error);
  10. });
  11. //先执行这个
  12. console.log('first');
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

QQ|Archiver|手机版|小黑屋|信息共享网

GMT+8, 2024-5-15 01:28 , Processed in 0.066133 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表