vlad 6f123ff03e 18.07 %!s(int64=6) %!d(string=hai) anos
..
index.js 6f123ff03e 18.07 %!s(int64=6) %!d(string=hai) anos
license 6f123ff03e 18.07 %!s(int64=6) %!d(string=hai) anos
package.json 6f123ff03e 18.07 %!s(int64=6) %!d(string=hai) anos
readme.md 6f123ff03e 18.07 %!s(int64=6) %!d(string=hai) anos

readme.md

onetime Build Status

Ensure a function is only called once

When called multiple times it will return the return value from the first call.

Unlike the module once, this one isn't naughty extending Function.prototype.

Install

$ npm install --save onetime

Usage

let i = 0;

const foo = onetime(() => i++);

foo(); //=> 0
foo(); //=> 0
foo(); //=> 0
const foo = onetime(() => {}, {throw: true});

foo();

foo();
//=> Error: Function `foo` can only be called once

API

onetime(fn, [options])

Returns a function that only calls fn once.

fn

Type: Function

Function that should only be called once.

options

Type: Object

throw

Type: boolean
Default: false

Throw an error when called more than once.

License

MIT © Sindre Sorhus