either

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

  • Use the logical or (||) operator on the result of calling the two functions with the supplied args.
const either = (f, g) => (...args) => f(...args) || g(...args);
const isEven = num => num % 2 === 0;
const isPositive = num => num > 0;
const isPositiveOrEven = either(isPositive, isEven);
isPositiveOrEven(4); // true
isPositiveOrEven(3); // true