reject 方法
)當promse中包含非同步操作時,例項的 then/catch 會在下個 eventloop執行,但是promise中的**會同步執行
console.
log(4)
settimeout((
)=>
,200
)const promise =
newpromise
((resolve, reject)
=>
)promise.
then
(res =>
)console.
log(3)
// 上面**會依次列印 4、1、3、5、2
console.
log(4)
settimeout((
)=>
)const promise =
newpromise
((resolve, reject)
=>
)promise.
then
(res =>
)console.
log(6)
// 上面**會依次列印 4、1、6、2、5
// 雖然先 執行的 settimeout,但是 5 是在 下個 eventloop中列印。promise.then 會在同步任務執行完成之後執行
reject 方法,我這裡理解 就等同於 throw
const promise1 =
newpromise
((resolve,reject)
=>
)const promise2 =
newpromise
((resolve,reject)
=>
)
非同步函式執行之後,也會返回乙個promise,那非同步函式如何觸發 reject 呢?throw
async
function
test()
test()
.catch
(err =>
)
Promise簡單使用
1.promise含義 promise 是非同步程式設計的一種解決方案,是一種鏈式的變成。一段簡單的使用 function hellopromise ready else hellopromise true then message error promise的狀態有三種 pending 進行中 f...
promise的簡單使用
var p new promise function resolve,reject 3000 settimeout function 2000 resolve 123 reject 123 ajax error reject var p2 p.then data res p2.then functi...
ES6 Promise的簡單使用
promise是乙個容器,儲存某個非同步的操作 有三種狀態,進行中 已成功 已失敗 resolve代表成功的 函式 reject代表失敗的 函式 let promise new promise function resolve,reject else 通過then 方法向promise傳遞成功和失敗...