Promise

在 JavaScript 中,Promise 是一种用于处理异步操作的对象,它代表了某个操作最终的完成(成功)或失败,并返回结果。Promise 提供了比传统的回调函数(callback)更优雅的方式来处理异步操作,避免了回调地狱的问题。

Promise 的基本结构:

let promise = new Promise(function(resolve, reject) {
  // 执行异步操作
  if (/* 成功 */) {
    resolve("成功信息");
  } else {
    reject("错误信息");
  }
});

Promise 的三种状态:

1. Pending(进行中):初始状态,既没有成功也没有失败。

2. Fulfilled(已完成):操作成功完成。

3. Rejected(已拒绝):操作失败。

Promise 的方法:

1. then():用于处理 Promise 成功的情况。

promise.then((value) => {
  console.log(value); // 处理成功结果
});

2. catch():用于处理 Promise 失败的情况。

promise.catch((error) => {
  console.error(error); // 处理错误信息
});

3. finally():无论 Promise 成功还是失败,都会执行。

promise.finally(() => {
  console.log('操作结束'); // 无论成功还是失败都会执行
});

示例代码:

let fetchData = new Promise((resolve, reject) => {
  let success = true;

  setTimeout(() => {
    if (success) {
      resolve("数据获取成功");
    } else {
      reject("数据获取失败");
    }
  }, 2000);
});

fetchData
  .then((result) => console.log(result))  // 成功时输出结果
  .catch((error) => console.error(error)) // 失败时输出错误
  .finally(() => console.log("操作完成"));  // 操作完成后输出

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值