TypeScriptでsleep関数の1行の実装

typescript

本記事ではTypeScriptでsleep関数を1行で実装した例を紹介します。

実装例

以下がTypeScriptでsleep関数を1行で実装する例です。

const sleep = (ms: number) => new Promise(resolve => setTimeout(resolve, ms));

この関数は、指定したミリ秒だけ非同期で処理を遅延させるものです。setTimeoutPromiseでラップすることで、非同期処理内で簡潔に待機処理を行えます。

使用例

async function example() {
  console.log("Start");
  await sleep(2000); // 2秒待機
  console.log("End");
}

example();

実行結果

Start
(2秒待機)
End

上記のコードは、2秒待機してから”End”を出力します。sleep関数は非同期処理のデバッグやシミュレーションに便利です。

用途とメリット

  • デバッグや動作確認: 非同期処理をテストするとき、わざと処理を遅延させたいシーンがある。
  • アニメーション制御: ユーザーインタラクションの間に短い休止を入れたい場合に便利。
  • APIコールのレート制限回避: 短時間に連続してAPIを叩くと制限に引っかかる場合があるため、意図的にウェイトを入れる。

TypeScriptで実装することで、型安全性を確保したままシンプルな待機処理が行えます。特に多くの行を割かず、たった1行でsleepを表現できるため、可読性も高いです。

まとめ

  • typescriptでのsleep関数の実装は非常にシンプルで、new Promise(resolve => setTimeout(resolve, ms))を1行にまとめるだけ。
  • 使い方awaitを用いることで自然に読み書きができ、コードを追いやすくなる。
  • 用途はデバッグ、APIコールの制限回避、アニメーション制御など幅広い。

短いコードながら、さまざまな場面で役立つ便利なテクニックです。ぜひ、あなたのTypeScriptプロジェクトに導入してみてください。

タイトルとURLをコピーしました