説明するより、コードを見たほうがわかりやすい。
async function sleep3() { console.log("start"); await sleep(3); console.log("end"); } // これはPromiseを返す async function sleep(n) { for(var i=0; i<n; i++) { await sleepOne(); } } function sleepOne() { return new Promise(resolve => setTimeout(resolve, 1000)); }
async関数からasync関数をawaitで呼ぶ事ができるようにこうなっている。