UNPKG

rambdax

Version:

Extended version of Rambda - a lightweight, faster alternative to Ramda

25 lines (18 loc) 375 B
import { curry } from './curry' function onceFn(fn, context){ let result return function (){ if (fn){ result = fn.apply(context || this, arguments) fn = null } return result } } export function once(fn, context){ if (arguments.length === 1){ const wrap = onceFn(fn, context) return curry(wrap) } return onceFn(fn, context) }