Promise的使用(学习总结)

Promise的使用

开发中需要先进行一部分操作之后再进行操作,这时候
Promise 对象用于表示一个异步操作的最终完成 (或失败)及其结果值。
promise实例有三种状态:pending(待定),fulfilled(已执行),rejected(已拒绝)。fulfilled和rejected又可以说是已成功和已失败,这两种状态又归为已完成状态。调用resolve和reject能将分别将promise实例的状态变成fulfilled和rejected,只有状态变成已完成(即fulfilled和rejected之一),才能触发状态的回调。举个例子:

let p = new Promise((resolve, reject) => {
  // 做一些操作
  if (判定条件) {
    resolve()
    //改变p的状态为fulfilled
  } else {
    reject()
    改变p的状态为rejected
  }
})

p.then(() => {
	console.log("判定生效,p的状态变为fulfilled");
    // 如果p的状态变为fulfilled,执行
}, () => {
	console.log("判定失败,p的状态变为rejected");
    // p的状态变为rejected,执行
})

promise及async await的使用
接收到resolve或者reject之后才会执行.then的成功或失败的方法。(resolve 和 reject格式一样,reslove(传下去的参数 字符串格式或者对象))
所有async开头的函数返回值都是Promise<返回值类型>,async是配合await的,比如a();b();两个方法,我想让a执行结束之后我再执行b,如果a是个异步程序的话,有可能是先进入a但是a没有执行完,就走了b,所以就可以

async c() {
  await a();
  b();
}

这样就是先等a执行完了(等进入.then还是等.then完全结束还存疑,经过测试后再更新),再去执行b。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值