Argument coalescing factory

OSCC · JavaScript, Function, Type · Oct 22, 2020

Customizes a coalesce function that returns the first argument which is true based on the given validator.

  • Use Array.prototype.find() to return the first argument that returns true from the provided argument validation function, valid.
const coalesceFactory = valid => (...args) => args.find(valid);
const customCoalesce = coalesceFactory(
  v => ![null, undefined, '', NaN].includes(v)
);
customCoalesce(undefined, null, NaN, '', 'Waldo'); // 'Waldo'

Recommended snippets

  • Logical or for functions

    JavaScript, Function

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

  • 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.