Promise:是异步编程的一种解决方案
1.什么是异步事件呢?
一种很常见的场景应该就是网络请求了。
我们封装一个网络请求的函数,因为不能立即拿到结果,所以不能像简单的3+4=7一样将结果返回。
所以往往我们会传入另外一个函数,在数据请求成功时,将数据通过传入的函数回调出去。
如果只是一个简单的网络请求,那么这种方案不会给我们带来很大的麻烦。
但是,当网络请求非常复杂时,就会出现回调地狱。
这样会使代码很难看,而且不够优雅,所以我们选用Promise
2.定时器异步事件
换成Promise代码
new->构造函数(1.保存一些状态信息,2.执行传入的函数)
在执行传入的回调函数时,会传入两个参数,resolve,reject,本身又是函数
成功时调用resolve,失败时调用reject,两种状态只会选择其中一种