sleep-ts
TypeScript icon, indicating that this package has built-in type declarations

0.1.1 • Public • Published

sleep-ts npm npm Build Status codecov Known Vulnerabilities

Pause JavaScript execution for a specified amount of time using Promises. Works elegantly with async/await and accepts flexible time formats like '3s' and '1h' (any string that can be parsed by the ms package). Implemented in TypeScript.

Installation

$ yarn add sleep-ts
# or 
$ npm install --save sleep-ts

Usage

import {sleep} from 'sleep-ts';
// or
const sleep = require('sleep-ts').sleep;
 
// With async/await
(async function slowHelloWorld() {
    console.log('Hello');
 
    // a number argument is treated as milliseconds, so this will
    // sleep for 1 second
    await sleep(1000);
 
    // a string argument is parsed, so this will sleep for 2 seconds
    await sleep('2s');
 
    console.log('World');
})()
 
// With raw Promises
sleep(4000).then(() => {
    console.log('PING');
 
    // If you pass a second argument, the sleep Promise will
    // resolve with the given value.
    return sleep(3000, 'PONG');
}).then(response => {
    console.log(response);
});
 

Output:

Hello
# 3 seconds later 
World
# 1 second later 
PING
# 3 seconds later 
PONG

Alternatives

  • If you don't care about the fancy time format parsing, you can use sleep-promise, which might save you a subdependency on the ms package.
  • Use setTimeout if you're okay with using callbacks.

Other Languages

License

MIT

Package Sidebar

Install

npm i sleep-ts

Weekly Downloads

2,089

Version

0.1.1

License

MIT

Unpacked Size

8.16 kB

Total Files

8

Last publish

Collaborators

  • dguo