es6 promise使用

1.寫法

// 定義一個promise
let promise = new Promise(function(reslove,reject){
  if(true){
     reslove(參數(shù))
  }else{
      reject(參數(shù))
  }
})

// 調(diào)用
promise.then(function(reslove傳來的參數(shù)){
    
}).catch(function(reject傳來的參數(shù)){
  
})
//catch可以捕獲前面的錯誤
或
promise.then(function(reslove傳來的參數(shù)){
    
}),function(reject傳來的參數(shù)){
  
}
// function捕獲前面的錯誤

2.多個promise調(diào)用

let a = new Promise(function(reslove,reject){
  reslove()
})
let b = new Promise(function(reslove,reject){
  reslove()
})

a
.then(b)

3.多個promise,都完成了才執(zhí)行回調(diào)(all方法)

let p = Promise.all([p1,p2,p3],function(val){
  // value值為三個promise返回的參數(shù)數(shù)組
})

如果這個三個promise, 某一個狀態(tài)為reject,那么val為該promise,reject方法帶的參數(shù)
p的狀態(tài)也為reject

4.多個promise,哪個先完成,用哪個(race方法)

let p = Promise.race([p1,p2,p3],function(val){
  // value值為先完成的promise返回的參數(shù)
})
p的狀態(tài)也變成先完成的promise的狀態(tài)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Promise 對象 Promise 的含義 Promise 是異步編程的一種解決方案,比傳統(tǒng)的解決方案——回調(diào)函...
    neromous閱讀 8,835評論 1 56
  • 一、Promise的含義 Promise在JavaScript語言中早有實(shí)現(xiàn),ES6將其寫進(jìn)了語言標(biāo)準(zhǔn),統(tǒng)一了用法...
    Alex灌湯貓閱讀 888評論 0 2
  • 含義 Promise是異步編程的一種解決方案,用于一個異步操作的最終完成(或失敗)及其結(jié)果值的表示,比傳統(tǒng)的回調(diào)函...
    nimw閱讀 27,378評論 0 4
  • 目錄:Promise 的含義基本用法Promise.prototype.then()Promise.prototy...
    BluesCurry閱讀 1,565評論 0 8
  • 1. Promise 的含義 所謂Promise,簡單說就是一個容器,里面保存著某個未來才會結(jié)束的事件(通常是一個...
    ROBIN2015閱讀 581評論 0 0

友情鏈接更多精彩內(nèi)容