es6中new promise的用法是什么

es6
小億
170
2024-01-22 16:40:59
欄目: 編程語言

在ES6中,使用new Promise()可以創(chuàng)建一個(gè)Promise對(duì)象。Promise是一種用于處理異步操作的方式,它可以使異步代碼的執(zhí)行結(jié)果更加可控和可預(yù)測(cè)。

new Promise()接受一個(gè)函數(shù)作為參數(shù),該函數(shù)包含兩個(gè)參數(shù):resolvereject。resolve函數(shù)用于將Promise標(biāo)記為成功并返回結(jié)果,reject函數(shù)用于將Promise標(biāo)記為失敗并返回錯(cuò)誤信息。

const promise = new Promise((resolve, reject) => {
  // 異步操作
  // 如果操作成功,調(diào)用resolve并傳遞結(jié)果
  // 如果操作失敗,調(diào)用reject并傳遞錯(cuò)誤信息
});

Promise對(duì)象有三種狀態(tài):pending(進(jìn)行中)、fulfilled(已成功)和rejected(已失?。R坏㏄romise的狀態(tài)變?yōu)閒ulfilled或rejected,就稱為resolved。

可以使用.then()方法來獲取Promise的結(jié)果,它接受一個(gè)或兩個(gè)回調(diào)函數(shù)作為參數(shù)。第一個(gè)回調(diào)函數(shù)用于處理成功的情況,第二個(gè)回調(diào)函數(shù)(可選)用于處理失敗的情況。

promise.then(
  result => {
    // 處理成功的情況
  },
  error => {
    // 處理失敗的情況
  }
);

另外,Promise還提供了一些靜態(tài)方法,如Promise.all()、Promise.race()等,用于處理多個(gè)Promise對(duì)象的情況。

0