Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Senior
11
Гибкое каррирование функции с произвольным числом вызовов
Условие задачи
Необходимо написать функцию curry, которая позволяет частично вызывать переданную функцию, передавая аргументы постепенно через цепочку вызовов. Функция должна запоминать полученные аргументы и, как только их количество достигнет количества параметров оригинальной функции, выполнить её и вернуть результат.
function sum(a, b, c, d) {
return a + b + c + d;
}
const curriedSum = curry(sum);
console.log(curriedSum(1)(2)(3)(4)); // 10
console.log(curriedSum(1, 2)(3)(4)); // 10
console.log(curriedSum(1)(2, 3, 4)); // 10