function curry(fn) { return function curried(...args) { if (args.length >= fn.length) return fn(...args); return (...nextArgs) => curried(...args, ...nextArgs); }; }. const add = curry((a, b, c) => a + b + c); add(1)(2)(3) === 6; add(1, 2)(3) === 6. fn.length — количество параметров. Каррирование позволяет частичное применение: const add5 = add(5). Проблема: не работает с rest параметрами (fn.length = 0). Lodash curry поддерживает placeholder: _.curry(fn)(_, 2)(1).
Как реализовать curry функцию?
Middle
214 просмотровAFK Offer AI
Как настроить CI/CD для фронтенда?