Использование логического AND с функциями
Для начала практики в программировании откройте Терминал/SSH и введите node
.
Для проверки того, возвращают ли две функции true
для заданного набора аргументов, используйте логический оператор AND (&&
).
const both =
(f, g) =>
(...args) =>
f(...args) && g(...args);
В приведенном выше коде создается новая функция both
, которая принимает две функции f
и g
в качестве входных параметров и возвращает другую функцию, которая вызывает f
и g
с переданными аргументами и возвращает true
только в том случае, если обе функции возвращают true
.
Например, чтобы проверить, является ли число одновременно положительным и четным, мы можем использовать функции isEven
и isPositive
с функцией both
, как показано ниже:
const isEven = (num) => num % 2 === 0;
const isPositive = (num) => num > 0;
const isPositiveEven = both(isEven, isPositive);
isPositiveEven(4); // true
isPositiveEven(-2); // false
Здесь isPositiveEven
- это новая функция, которая проверяет, является ли заданное число одновременно положительным и четным, используя функцию both
с функциями isEven
и isPositive
в качестве входных параметров.