学习promise的使用

1、promise 的介绍:

一种用于解决异步编程的方案,可以解决多层回调函数嵌套造成的回调地狱问题。

2、promise的三种状态:

pending(进行中)、fulfilled(已成功)、rejected(已失败)

3、promise的特点

①promise接收一个函数作为参数,该函数的参数是resolve和reject两个函数,当异步操作成功时【pending到fufilled】,会调用resolve()函数把结果作为参数传出;当异步操作失败时【pending到rejected】,会调用reject()函数把错误进行返回。

②promise实例生成后,可使用then进行捕捉状态,若then中返回一个promise 对象则可作为下一个then的参数

4、promise的优缺点

缺点:

① promise 一旦新建就会立即执行,无法中途进行取消
②当处于pending状态时,无法知道目前处于阶段(是刚开始或即将结束)
③若不设置回调函数,promise内部抛出的错误不会反映到外部

优点:

①更好地解决了异步嵌套的问题(回调地狱)
②更好地进行错误的捕捉(异常处理)

5、promise 的使用

①pending 状态

const status = new Promise((resolve, reject) => {});
console.warn("status===", status); // pending状态

②fulfilled状态

const status = new Promise((resolve, reject) => {
    resolve(1);
});
console.warn("status===", status); // fulfilled状态
status
   .then((value) => {
     console.warn("value===", value); // 1
   })
   .catch((value1) => {
     console.warn("error===", value1);
   });

③rejected状态

const status = new Promise((resolve, reject) => {
    reject(1);
});
console.warn("status===", status); // rejected状态
status
   .then((value) => {
     console.warn("value===", value);
   })
   .catch((value1) => {
     console.warn("error===", value1); // 1
   });
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值