Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including p-defer with all npm packages installed. Try it out:

var pDefer = require("p-defer")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

p-defer v3.0.0

Create a deferred promise

p-defer Build Status

Create a deferred promise

Don't use this unless you know what you're doing. Prefer the Promise constructor.

Install

$ npm install p-defer

Usage

const pDefer = require('p-defer');

function delay(ms) {
    const deferred = pDefer();
    setTimeout(deferred.resolve, ms, '🦄');
    return deferred.promise;
}

(async () => {
    console.log(await delay(100));
    //=> '🦄'
})();

The above is just an example. Use delay if you need to delay a promise.

API

pDefer()

Returns an object with a promise property and functions to resolve() and reject().

Related

  • p-lazy - Create a lazy promise that defers execution until .then() or .catch() is called
  • More…

Metadata

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free