Call functions with context

OSCC · JavaScript, Function · Jun 13, 2021

Given a key and a set of arguments, call them when given a context.

  • Use a closure to call key with args for the given context.
const call = (key, ...args) => context => context[key](...args);
Promise.resolve([1, 2, 3])
  .then(call('map', x => 2 * x))
  .then(console.log); // [ 2, 4, 6 ]
const map = call.bind(null, 'map');
Promise.resolve([1, 2, 3])
  .then(map(x => 2 * x))
  .then(console.log); // [ 2, 4, 6 ]

Recommended snippets

  • Bind object method

    JavaScript, Function

    Creates a function that invokes the method at a given key of an object, optionally prepending any additional supplied parameters to the arguments.

  • Bind function context

    JavaScript, Function

    Creates a function that invokes fn with a given context, optionally prepending any additional supplied parameters to the arguments.

  • Logical or for functions

    JavaScript, Function

    Checks if at least one function returns true for a given set of arguments.