目录
1. 回调地狱
多层回调函数的相互嵌套,就形成了回调地狱。示例代码如下:
回调地狱的缺点:
代码耦合性太强,牵
一
发而
动
全
身
,
难
以维护
大量冗余的代码相互
嵌
套,
代
码
的
可读
性
变差
1.1 如何解决回调地狱的问题
为了解决回调地狱的问题,ES6(ECMAScript 2015)中新增了 Promise 的概念。
2.Promise 的基本概念
① Promise 是一个构造函数
我们可以创建
Promise
的实
例
const
p
=
new
Promise()
new
出来的
Promise
实例对象,
代表一个
异
步操作
② Promise.prototype 上包含一个.then() 方法
每一
次
new
Promise()
构造函数得到的实例
对
象,
都可
以
通过原型链的
方
式
访
问
到
.then()
方法,例
如
p.then()
③ .then() 方法用来预先指定成功和失败的回调函数
p.then(
成功的回调
函
数
,
失
败
的
回
调
函
数
)
p.then(
result
=>
{
},
error
=>
{
})
调
用
.then()
方法时,成功的回调
函
数是
必
选
的
、失
败
的回
调
函