es-toolkit/docs/reference/function/ary.md
2024-08-31 14:45:20 +09:00

708 B

ary

Creates a function that invokes func, with up to n arguments, ignoring any additional arguments.

Signature

function ary<F extends (...args: any[]) => any>(func: F, n: number): (...args: any[]) => ReturnType<F>;

Parameters

  • func (F): The function to cap arguments for.
  • n (number): The arity cap.

Returns

((...args: any[]) => ReturnType<F>): Returns the new capped function.

Examples

import { ary } from 'es-toolkit/function';

function fn(a: number, b: number, c: number) {
  return Array.from(arguments);
}

ary(fn, 0)(1, 2, 3); // []
ary(fn, 1)(1, 2, 3); // [1]
ary(fn, 2)(1, 2, 3); // [1, 2]
ary(fn, 3)(1, 2, 3); // [1, 2, 3]