Promise
Posted congtt
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Promise相关的知识,希望对你有一定的参考价值。
// Promise介绍
// 在 JS 中,实现异步编程,一般就是通过 回调函数 的方式来实现的,回调函数就会形成下面的函的回调地狱的问题,代码看上去就会比较恶心。
$.ajax({
success: function () {
$.ajax({
success: function () {
$.ajax({
success: function () {
}
})
}
})
}
})
// Promise 的出现是为了解决 回调地狱 问题,使用Promise后,让代码的开发体验更优雅
1 使用链式编程的方式,来代替原始的回调函数
2 能够使用同步编程的思维来写异步代码
// Promise 理解为一个容器,这个容器中封装了异步操作,那么,Promise会保证这个异步操作将来一定会发生,不管是成功还是失败,并且会将这个异步操作的结果通知到你
// Promise 中的三个状态:
// 1 pending 等待
// 2 fufilled 成功
// 3 rejected 失败
// Promise语法
Promise 是一个构造函数
参数:是一个回调函数
回调函数有两个参数: resolve / reject
resolve 表示成功的函数
reject 表示失败的函数
const p = new Promise(function (resolve, reject) {
// 封装一个异步操作
setTimeout(function () {
resolve()
reject()
}, 1000)
})
p
// 当Promise中调用 resolve() ,这个函数会执行
.then(function (data) {
console.log(‘then:异步操作成功了‘, data);
})
// 当Promise中调用 reject() ,这个函数会执行
.catch(function (err) {
console.log(‘catch: 异步操作失败了‘, err);
})
以上是关于Promise的主要内容,如果未能解决你的问题,请参考以下文章