promise是异步变成的解决方案,简单来说就是一个容器里面存放着未来才会结束的事件。
promise有2个特点:
1.对象的状态不受外界影响,它有三种状态:pending(进行中),fulfilled(成功),rejected(失败)。
2.状态改变,就不会在变。
缺点:
1.一旦新建就会立即执行,中途不能取消。
2.如果不设置回到函数,promise内部抛出的错误,不会反映到外部。
3.处于pending状态的时候,无法知道目前进展到那一个阶段(刚刚开始还是即将完成还是失败了)
基本用法:
resolve函数将状态由进行中 变为 成功, reject函数将状态由进行中 变为 失败
const promise = new Promisr (function (resolve, reject) {
if (//成功) {
resolve(value)
} else {
reject(error)
}
})
promise生成实例后,可以使用then分别指定 成功和失败的回到函数
promise.then(function (value) {
//success
}, function (error) {
//error
})
网友评论