ES6 Promise理解

JDZ發表於2019-02-27

www.cnblogs.com/whybxy/p/76…

重新理解了promise:

`let p = new Promise((resolve,reject)=>{

setTimeOut(()=>{
    console.log('執行完成');
    console.log('隨便什麼資料')
},2000)
複製程式碼

}) `

總結:

1、promise是自動執行

2、將promise放到函式中,然後通過呼叫函式來執行

3、catch捕捉失敗的情況

效果和寫在then的第二個引數裡面一樣。不過它還有另外一個作用:在執行resolve的回撥(也就是上面then中的第一個引數)時,如果丟擲異常了(程式碼出錯了),那麼並不會報錯卡死js,而是會進到這個catch方法中。

4、Promise.all([xxx,xxx,xxx])

當所有的非同步操作執行完畢後才去回撥

5、Promise.race([xxx,xxx,xxx])

誰跑的慢,以誰為準執行回撥

相關文章