假设一名厨师,需要做3道菜,声明一个菜数组,菜对象是菜名和做菜需要的时间
let dishes=[{name:"fish",time:1},{name:"fish1",time:2},{name:"fish3",time:3}]
首先,厨师做菜应该一道接一道的做,所以得保证一道菜做后才开始做下一道菜。这里用async/await实现,当然也可以选择都用Promise
(async ()=>{ for (let d of ds) { console.log("开始做"+d.name) await (() => { return new Promise(res => { setTimeout(res, d.time * 1000) }) })(); console.log("做好了"+d.name) } })