【JavaScript/TypeScript】setTimeoutでsleep, delay, waitの処理を作る

JavaScript

setTimeoutでsleep, delay, waitの処理

地味に色々な場面で使いたくなる処理ですが、毎回ググって作っていたのでまとめておきましたので、良さげなやつあれば参考にしてください。

過去作ったやつ?とかメモってたやつ?を貼った物なので、動作はちゃんとは事前に確認してから試してみてください〜!

TypeScript環境

サンプル1

これはTypeScript環境で、npm install -D @types/nodeで型をインストールしないと動作しないはず。

const sleep = (time: number): Promise<NodeJS.Timeout> => {
  return new Promise(resolve => {
    return setTimeout(resolve, time)
  })
}

サンプル2

これは型指定があるので、TypeScript環境が必要。

const delay = async (ms: number) => {
  return new Promise((resolve) => {
    return setTimeout(resolve, ms);
  });
};

サンプル3

これは型指定があるので、TypeScript環境が必要。

function delay(ms: number) {
    return new Promise((resolve) => {
        return setTimeout(resolve, ms);
    });
}

JavaScript環境

サンプル1

const wait = async (ms) => new Promise(resolve => setTimeout(resolve, ms));

サンプル2

const wait = async (ms) => {
  return new Promise((resolve) => {
    setTimeout(() => {
      resolve();
    }, ms)
  });
}

サンプル3

function delay(ms) {
  return new Promise((resolve) => {
    return setTimeout(() => {
      return resolve();
    }, ms);
  });
}

まとめ

今回はJavaScriptTypeScriptで使うsetTimeoutでのsleep, delay, waitのような処理を作成しました!

もし使えそうなやつがあったらブックマークして必要な時にでも参照していただければ!

オススメの関連商品

Note一覧

コメント

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