Javascript: Композиция функций

JS: Функциональное программирование 28 сообщений
Обновлено: 02 дек., 23:20
2389
Студентов
97%
Завершения

С точки зрения математики, композиция функций f и g — новая функция z = f(g(x)).

compose.js

Реализуйте и экспортируйте по умолчанию функцию, которая принимает на вход две других одноаргументных функции и возвращает новую функцию. Эта новая функция также принимает на вход один параметр и представляет собой композицию двух исходных одноаргументных функций (эти функции вызываются последовательно в обратном порядке: например, при порядке f, g ===> f(g(x))).

Примеры ниже помогут понять, как должна работать функция:

const f = compose(Math.sqrt, Math.abs);
f(-4); // 2

compose((v) => v, (v) => v)(10);         // 10
compose((v) => v + 2, (v) => v)(10);     // 12
compose((v) => v, v => (v) - 2)(10);     // 8
compose((v) => v ** 2, (v) => v - 2)(2); // 0
compose((v) => v - 2, (v) => v ** 2)(2); // 2

Для полного доступа к испытанию нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
900
упражнений
2000+
часов теории
3200
тестов

Впечатления

Решил минут за 5, и самому даже как то приятно, что понимание функций стало более чётким :) Спасибо за задание ;)