毎回過去のソースからコピペしてる
/**
* sleepもどき
* @param {Number} ms ミリ秒
* @returns {Promise}
*/
const sleep = (ms) => new Promise(resolve => { setTimeout(resolve, ms); });
const sleep = (ms: number): Promise<void> => new Promise(resolve => { setTimeout(resolve, ms); });
ようするにPromise化した setTimeout()
です。
普通に .then()
で使ってもただの setTimeout()
でしかないので、await
をつけて呼びます。
// ※asyncファンクションの中でしかawaitは使えません
(async() => {
console.log('開始', new Date().getTime());
await sleep(3000); // 3000ミリ秒
console.log('終了', new Date().getTime());
})();
開始 1575708743794 終了 1575708746795