對Promise的研究4

2022-06-23 20:03:17 字數 750 閱讀 6027

promise.reject(reason)方法也會返回乙個新的 promise 例項,該例項的狀態為rejected

const p = promise.reject('出錯了');// 等同於

const p = new promise((resolve, reject) => reject('出錯了'))

p.then(null, function (s) );// 出錯了

上面**生成乙個 promise 物件的例項p,狀態為rejected,**函式會立即執行。

注意,promise.reject()方法的引數,會原封不動地作為reject的理由,變成後續方法的引數。這一點與promise.resolve方法不一致。

const thenable = 

};promise.reject(thenable)

.catch(e => )// true

上面**中,promise.reject方法的引數是乙個thenable物件,執行以後,後面catch方法的引數不是reject丟擲的「出錯了」這個字串,而是thenable物件。

Promise對Ajax的封裝

jquery的ajax 在開發中,我們常常會用到ajax,根據請求的位址,伺服器返回相應的success或者error,而且ajax也是可以非同步的,async為true的時候為非同步,反之同步,下面以非同步為例,因為我們的promise就是非同步操作。ajax error function dat...

自己對Promise的簡單理解

promise在建立時,會先執行自己裡面的內容function initpromise else initpromise then success catch error promise.all 方法用於將多個promise例項,包裝成乙個新的promise例項,他是並行執行的。例子 例如乙個頁面的...

說說你對promise的了解

依照 promise a 的定義,promise 有四種狀態 pending 初始狀態,非 fulfilled 或 rejected.fulfilled 成功的操作.rejected 失敗的操作.settled promise已被fulfilled或rejected,且不是pending 另外,fu...