24day1215 Promise

一、Promise用来解决什么问题
1.用来解决异步程序和优化回调地狱
异步程序:计时器,ajax
回调地狱: 回调函数嵌套调用,根据外层异步程序执行结果,调用内层异步程序
2.使用Promise之后的优势
提高了代码的可读性、方便调错、节省内存
二、Promise的使用
1.三种基本的状态
pending:正在进行时
fulfilled:成功
rejected:失败
2.基本语法:
new Promise ((函数1, 函数2)=>{
resolve(“完成”)
reject(“失败”)
})
三、Promise实例的方法(使用方法是:链式调用)
1. promise.then(函数1, 函数2)函数1处理成功,函数2处理失败
2. promise.catch(函数1)处理所有失败
3. promise.finally(函数1) 处理结束后的状态

四、Promise类的方法
1. promise.resolve() 成功状态
2. promise.reject() 失败状态
3. promise.all() 批处理:全部成功才执行then,只要有一个失败就执行catch
4. promise.any() 批处理:只要有一个成功就执行then,全部失败才执行catch
5. promise.race() 批处理:race(赛跑),只要有一个结束了,不论成功还是失败就执行它
6. promise.allSettled() 批处理:所有的promise都结束。不管是成功还是失败都会触发then,then的回调函数的参数为每个promise实例的状态和数据

五、异步的终极解决方案:Async/Await 配套使用
1. async关键字,在函数function之前使用,被他声明的函数都是异步函数,且函数执行结果自动返回一个成功状态的Promise实例,这个异步函数内的return关键字给这个成功状态的Promise实例返回成功时的数据。
2. await 关键字只能在async声明的异步函数汇总使用,表示等待。等待一个异步执行结束并返回成功状态时的数据。await可以将异步的函数同步执行,await一般用于等待Promise的状态。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值