在ES6中,使用new Promise()
可以創建一個Promise對象。Promise是一種用于處理異步操作的方式,它可以使異步代碼的執行結果更加可控和可預測。
new Promise()
接受一個函數作為參數,該函數包含兩個參數:resolve
和reject
。resolve
函數用于將Promise標記為成功并返回結果,reject
函數用于將Promise標記為失敗并返回錯誤信息。
const promise = new Promise((resolve, reject) => {
// 異步操作
// 如果操作成功,調用resolve并傳遞結果
// 如果操作失敗,調用reject并傳遞錯誤信息
});
Promise對象有三種狀態:pending(進行中)、fulfilled(已成功)和rejected(已失敗)。一旦Promise的狀態變為fulfilled或rejected,就稱為resolved。
可以使用.then()
方法來獲取Promise的結果,它接受一個或兩個回調函數作為參數。第一個回調函數用于處理成功的情況,第二個回調函數(可選)用于處理失敗的情況。
promise.then(
result => {
// 處理成功的情況
},
error => {
// 處理失敗的情況
}
);
另外,Promise還提供了一些靜態方法,如Promise.all()
、Promise.race()
等,用于處理多個Promise對象的情況。