HTMLify

LeetCode - Allow One Function Call - JavaScript
Views: 92 | Author: abh
/**
 * @param {Function} fn
 * @return {Function}
 */
var once = function(fn) {
    let called = false;
	return function(...args){
        if (called)
            return undefined;
        called = true;
        return fn(...args);
    }
};

/**
 * let fn = (a,b,c) => (a + b + c)
 * let onceFn = once(fn)
 *
 * onceFn(1,2,3); // 6
 * onceFn(2,3,6); // returns undefined without calling fn
 */

Comments