UNPKG

@newdash/newdash

Version:

javascript/typescript utility library

39 lines (38 loc) 1.11 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.ary = void 0; const createWrap_1 = __importDefault(require("./.internal/createWrap")); /** * @ignore * @private * @internal */ const WRAP_ARY_FLAG = 128; /** * Creates a function that invokes `func`, with up to `n` arguments, * ignoring any additional arguments. * * @since 5.5.0 * @category Function * @param func The function to cap arguments for. * @param n The arity cap. * @param guard Enables use as an iteratee for methods like `map`. * @returns Returns the new capped function. * @example * * ```js * map(['6', '8', '10'], ary(parseInt, 1)); * // => [6, 8, 10] * ``` */ function ary(func, n = func.length, guard) { n = guard ? undefined : n; n = (func && n == null) ? func.length : n; // @ts-ignore return (0, createWrap_1.default)(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n); } exports.ary = ary; exports.default = ary;