目录
一.什么是promise
二.网络请求的回调地狱
(套娃?)
三.定时器的异步事件
话不多收,咱们直接上代码,看一下promise这个东西到底如何使用的
显然,这里出现了回调地狱。代码不够优雅
在promise函数里写resolve() 函数再回调then函数。把不够优雅的代码写进去 一旦调了resolve函数就会来到then
最后形成了比较优雅的代码:
三.什么情况下会用到Promise
一般情况下是有异步操作时,使用Promise对这个异步操作进行封装
这里提一下resolve 和 reject
当你执行new的时候回调的是这个函数,
四.Promise的三种状态
sync ->同步
async -> 异步
顺便讲一下第二种Promise写法:
五.Promise的链式调用
链式调用一:
链式调用二:
链式调用三:
代码越来越优雅
如果链中其中有一行执行 reject 前面代码可以执行但是下面代码不执行 然后回调catch(又捕获了一个小可爱)
或者咱们手动抛出异常 throw
六.promise的all方法
虽然函数有点多,但是不要害怕
用settimeout模拟一下,直观一点