自己對Promise的簡單理解

2021-08-25 17:12:00 字數 1170 閱讀 9361

promise在建立時,會先執行自己裡面的內容

function initpromise()else

})};

initpromise

().then

((success)=>).catch

((error)=>)

promise.all():方法用於將多個promise例項,包裝成乙個新的promise例項,他是並行執行的。

例子:例如乙個頁面的聊天系統,我們需要從兩個不同的url分別獲得使用者的個人資訊和好友列表,這兩個任務是可以並行執行的。用`promise.all()`實現

// 獲取聊天系統中的使用者資訊

let message = new promise((resolve,reject) => )

)});

// 獲取好友列表

letperson = new

promise

((resolve,reject) => ))})

使用`promise.all

()`並行處理事件,他會等待最慢獲取資料的那個介面處理完畢後,將多個介面獲取到的資料,以`陣列`的形式返回。

all(中的引數)就是同時呼叫介面的函式名,result就是不同介面獲取的資料,以陣列顯示

promise.all

([message,person]).then

(result => )

寫法一:需要返回值的寫法,會有返回值

function promise()))})

}寫法二:不用返回值,即使不用返回值,也學要寫`resolve

()` function

promise

()) })

}呼叫這個函式,`寫法一`是需要有返回值時這樣寫,`寫法二`只是呼叫完這個介面後再去操作其他的邏輯。

首先會先執行`promise`函式中的邏輯,當執行完這個函式之後,如果成功了。才回執行`then`中的邏輯**。通常這樣寫就是順序的問題,這樣會先得到想要的資料,再去進行邏輯操作。

promise

().then

(result => )

2 10 Promise 白話簡單理解

首先,我們得理解乙個小學題,燒 水 煮 面 我們是先等水燒開完之後 fulfilled 開始準備材料,還是在水燒開途中 pending 準備材料呢 其實前者就是 同步問題 而 後者就是 非同步問題 我們的 js 就是非同步處理問題 當然 這裡由於我技術有限,我就不深入討論了 理解到了這 就可以看這個...

自己對boot c 的 理解

bootloader 的 目標是啟動核心 0.設定串列埠1.關閉看門狗2.設定時鐘3.初始化sdram4.重定位5.執行main 現在要完成對main的編寫 void main void define tag next t struct tag u32 t t hdr.size void setup...

自己對Python 類的理解

class pet object 父類 類屬性 speed grow 0.02 def init self,age age 物件屬性 self.age age 類方法 classmethod defgrowth cls,time return cls.speed grow time 靜態方法 sta...