js非同期forサイクル

574 ワード

料理人を仮定すると、料理を作るには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)
        }
    })