自己實現Promise

2021-10-17 13:01:07 字數 653 閱讀 3700

new

mypromise

((resolve, reject)

=>).

then

(result =>

)

最基本的promise (沒有數顯then鏈)
class

mypromise);

};// 為了保證執行resolve/reject的時候,已經通過then把需要執行的方法弄好了,我們判斷處理(沒有方法的時候,我們讓改變狀態的操作延遲進行)

letresolve

= result =>

let delaytimer =

settimeout

(_ =>,0

);};

letreject

= reason =>

let delaytimer =

settimeout

(_ =>,0

);};

// 每一次new promise都會立即執行executor函式

trycatch

(err)}

// mypromise.prototype.then

then

(resolvefn, rejectfn)

}

自己實現Promise

class mypromise 0 resolve obj reject obj then func,errfunc function fff resolve,reject test var m new mypromise fff var num 1 m.then obj obj console.l...

寫給自己看的Promise

static pending pending 準備狀態 static fulfilled fulfilled 解決狀態 static rejected rejected 拒絕狀態 1.初始化狀態 值 then中沒 有處理的函式陣列 2.將resolve和reject函式傳遞 出去 construct...

自己對Promise的簡單理解

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