UNPKG

es-toolkit

Version:

A state-of-the-art, high-performance JavaScript utility library with a small bundle size and strong type annotations.

29 lines (28 loc) 711 B
import { invoke } from "./invoke.mjs"; //#region src/compat/util/method.ts /** * Creates a function that invokes the method at `path` of a given object with the provided arguments. * * @param path - The path of the method to invoke. * @param args - The arguments to invoke the method with. * @returns Returns a new function that takes an object and invokes the method at `path` with `args`. * * @example * const object = { * a: { * b: function (x, y) { * return x + y; * } * } * }; * * const add = method('a.b', 1, 2); * console.log(add(object)); // => 3 */ function method(path, ...args) { return function(object) { return invoke(object, path, args); }; } //#endregion export { method };