首頁技術文章正文

什么是promise?說下你了解的promise【前端面試題】

更新時間:2022-08-19 來源:黑馬程序員 瀏覽量:

IT培訓班


Promise,簡單來說就是一個容器,里面保存著某個未來才會結束的事件(通常是一個異步操作)的結果。從語法上說,Promise 是一個對象,從它可以獲取異步操作的消息。

例如以下一個promise的例子:

const promise = new Promise(function(resolve, reject) {  
if ( 異步操作成功 ){    
  resolve(value);
  } else {    
    reject(error);
  }
});


可以看出一個promise的構造函數(shù)包含兩個方法resolve、reject,同時根據(jù)promise+規(guī)范可知promise包含三個狀態(tài):

pending: 初始狀態(tài),既不是成功,也不是失敗狀態(tài)。

fulfilled: 意味著操作成功完成。

rejected: 意味著操作失敗。

那么我們可以可以根據(jù)這三種不同狀態(tài)去實現(xiàn)resolve、reject,以及實現(xiàn)then方法,那么一個簡單的promise雛形就出來了。

分享到:
在線咨詢 我要報名
和我們在線交談!