亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

實(shí)現(xiàn)Promise基本原理

wmui / 2176人閱讀

摘要:先把的回調(diào)先到數(shù)組,然后在調(diào)用該回調(diào)鏈?zhǔn)秸{(diào)用,一個簡單是實(shí)現(xiàn)原理,方法中使用,為的是鏈?zhǔn)秸{(diào)用,首次遍歷數(shù)組時,下標(biāo)為,傳入到首次的返回結(jié)果。如果有錯請各位多多指點(diǎn),勿噴,

let P = class {

  constructor(callback) {
    this.resolveSet = [];
    this.rejectSet = [];
    setTimeout(() => { **// 先把then的回調(diào)先push到數(shù)組 ,然后在調(diào)用該回調(diào)**
      callback(this.resolve.bind(this), this.reject.bind(this))
    }, 0);
  }

  resolve(result) {
    this.resolveSet.reduce((before, current,i) => { //  鏈?zhǔn)秸{(diào)用
      if(i ===1){
        return current(before(result))
      }else{
        return current(before)
      }
    })
  }
  
  reject(err) {}

  then(callback) {
    this.resolveSet.push(callback);
    return this
  }
  catch (callback) {}
}
new P((resolve, reject) => {
  return resolve({
    result: "resolve"
  })
}).then(data => {
  return {
    result: 1
  }
}).then((x) => {
  return {result:2}
}).then(x=>{
  debugger
}),

一個簡單是實(shí)現(xiàn)原理,resolve方法中使用reduce,為的是鏈?zhǔn)秸{(diào)用,首次遍歷callback數(shù)組時,下標(biāo)為 1,傳入到首次的返回結(jié)果。
如果有錯請各位多多指點(diǎn),勿噴,

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/101247.html

相關(guān)文章

  • Promise 基本原理 & 異步

    摘要:追加在本輪循環(huán)的異步任務(wù)追加在次輪循環(huán)的異步任務(wù)規(guī)定,和的回調(diào)函數(shù),追加在本輪循環(huán),即同步任務(wù)一旦執(zhí)行完成,就開始執(zhí)行它們。 author: 陳家賓 email: 617822642@qq.com date: 2018/2/23 Promise 基本實(shí)現(xiàn) var PENDING = 0; var FULFILLED = 1; var REJECTED = 2; function Pr...

    mtunique 評論0 收藏0
  • 解析 Promise 原理實(shí)現(xiàn)一個Promise

    摘要:解析原理,實(shí)現(xiàn)一個概述這篇文章旨在解析的異步實(shí)現(xiàn)原理,并且以中的為藍(lán)本實(shí)現(xiàn)一個簡單的。具體的規(guī)范可以參見細(xì)節(jié)構(gòu)造器中必須傳入函數(shù),否則會拋出錯誤。中的回調(diào)返回值會影響返回的對象。執(zhí)行器傳入構(gòu)造器的為函數(shù),并且在構(gòu)造時就會執(zhí)行。 解析 Promise 原理,實(shí)現(xiàn)一個Promise 概述 這篇文章旨在解析 Promise的異步實(shí)現(xiàn)原理,并且以 ES6中的 Promise 為藍(lán)本實(shí)現(xiàn)一個簡單...

    silenceboy 評論0 收藏0
  • Promise之深入淺出

    摘要:不兼容問題,本文不予以處理,出門左轉(zhuǎn),找谷哥。如果中的回調(diào)函數(shù)拋出一個錯誤,那么返回的將會成為拒絕狀態(tài),并且將拋出的錯誤作為拒絕狀態(tài)的回調(diào)函數(shù)的參數(shù)值。 Promise與async 主要內(nèi)容: promise基本實(shí)現(xiàn)原理 promise 使用中難點(diǎn)(鏈?zhǔn)秸{(diào)用,API基本上返回都是一個新Promise,及參數(shù)傳遞) promise 對異常處理 參考: ? 30分鐘,讓你徹底明...

    littleGrow 評論0 收藏0
  • JavaScript 異步

    摘要:從最開始的到封裝后的都在試圖解決異步編程過程中的問題。為了讓編程更美好,我們就需要引入來降低異步編程的復(fù)雜性。寫一個符合規(guī)范并可配合使用的寫一個符合規(guī)范并可配合使用的理解的工作原理采用回調(diào)函數(shù)來處理異步編程。 JavaScript怎么使用循環(huán)代替(異步)遞歸 問題描述 在開發(fā)過程中,遇到一個需求:在系統(tǒng)初始化時通過http獲取一個第三方服務(wù)器端的列表,第三方服務(wù)器提供了一個接口,可通過...

    tuniutech 評論0 收藏0
  • ES6-7

    摘要:的翻譯文檔由的維護(hù)很多人說,阮老師已經(jīng)有一本關(guān)于的書了入門,覺得看看這本書就足夠了。前端的異步解決方案之和異步編程模式在前端開發(fā)過程中,顯得越來越重要。為了讓編程更美好,我們就需要引入來降低異步編程的復(fù)雜性。 JavaScript Promise 迷你書(中文版) 超詳細(xì)介紹promise的gitbook,看完再不會promise...... 本書的目的是以目前還在制定中的ECMASc...

    mudiyouyou 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<