假設一名廚師,須要作3道菜,聲明一個菜數組,菜對象是菜名和作菜須要的時間數組
let dishes=[{name:"fish",time:1},{name:"fish1",time:2},{name:"fish3",time:3}]
首先,廚師作菜應該一道接一道的作,因此得保證一道菜作後纔開始作下一道菜。這裏用async/await實現,固然也能夠選擇都用Promiseasync
(async ()=>{ for (let d of ds) { console.log("開始作"+d.name) await (() => { return new Promise(res => { setTimeout(res, d.time * 1000) }) })(); console.log("作好了"+d.name) } })