30秒学会 JavaScript 片段 · 2020年3月21日

30秒学会 JavaScript 片段 – both

Returns true if both functions return true for a given set of arguments, false otherwise.

Use the logical and (&&) operator on the result of calling the two functions with the supplied args.

代码片段

const both = (f, g) => (...args) => f(...args) && g(...args);

使用样例

const isEven = num => num % 2 === 0;
const isPositive = num => num > 0;
const isPositiveEven = both(isEven, isPositive);
isPositiveEven(4); // true
isPositiveEven(-2); // false