Promise 是一种 JavaScript 中的对象,用于处理异步操作。它表示一个最终可能完成(解析)或失败(拒绝)的操作,以及其结果值。
Promise 有三种状态:
Pending(待定):初始状态,既不是成功,也不是失败。
Fulfilled(已实现):意味着操作成功完成。
Rejected(已拒绝):意味着操作失败。
Promise 的基本用法如下:
创建一个新的 Promise:
javascript
复制
let promise = new Promise(function(resolve, reject) {
// 异步操作
if (/* 操作成功 */) {
resolve('成功的结果');
} else {
reject('失败的原因');
}
});
使用 .then() 方法处理成功的结果:
javascript
复制
promise.then(function(result) {
// 处理成功的结果
console.log(result); // '成功的结果'
}, function(error) {
// 处理失败的原因
console.log(error); // '失败的原因'
});
使用 .catch() 方法处理失败的原因:
javascript
复制
promise.catch(function(error) {
// 处理失败的原因
console.log(error); // '失败的原因'
});
使用 .finally() 方法无论 Promise 是解析还是拒绝都会执行的操作:
javascript
复制
promise.finally(function() {
// 无论 Promise 是解析还是拒绝都会执行的操作
});