Skip to content

Instantly share code, notes, and snippets.

@metafeather
Created January 14, 2025 12:56
Show Gist options
  • Save metafeather/8ce22675c62aa146a9cd08a686f4eeb8 to your computer and use it in GitHub Desktop.
Save metafeather/8ce22675c62aa146a9cd08a686f4eeb8 to your computer and use it in GitHub Desktop.
a promisified version of setTimeout
// ref: https://mrcoles.com/implementing-sleep-javascript-promise/
const sleep = (delay, resolveValue) => new Promise((resolve) => {
setTimeout(() => resolve(resolveValue), delay);
});
const sleep = <T extends any>(
delay: number,
resolveValue?: T
): Promise<T> =>
new Promise((resolve) => {
setTimeout(() => resolve(resolveValue), delay);
});
await sleep(1000); // sleep for 1 second
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment