建立promise
延續前一篇關於promise的文章,來試試看要怎麼建立一個Promise。
promise初版
製作一個樂透功能的promise
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| const lotteryPromise = new Promise(function(resolve,reject){ if(Math.random() >= 0.5){ resolve('You Win the Lottery'); //fulfilled }else{ reject("loser la"); //reject } })
lotteryPromise.then((res)=>{ console.log(res) //印出You Win the Lottery }).catch((err)=>{ console.log(err) //印出loser la })
|
有async效果的promise版本
以上不是async
所以加入setTimeout來實現延遲
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| const lotteryPromise = new Promise(function(resolve,reject){ setTimeout(()=>{ if(Math.random() >= 0.5){ resolve('You Win the Lottery'); }else{ reject("loser la"); } },2000) //等2秒才執行 })
lotteryPromise.then((res)=>{ console.log(res) //印出You Win the Lottery }).catch((err)=>{ console.log(err) //印出loser la })
|