TGViewer
Вёрстка сайтов | HTML, CSS, JS Вёрстка сайтов | HTML, CSS, JS @free_html_lessons · 4.5K subscribers
Post #2651 748
Каррирование в javascript

Каррирование в JavaScript - это процесс преобразования функции с несколькими аргументами в последовательность функций с одним аргументом. Каждая последующая функция принимает один аргумент и возвращает новую функцию, которая также принимает один аргумент, и так далее.
Пример использования каррирования в JavaScript:

// Исходная функция, принимающая 3 аргумента
function sum(a, b, c) {
return a + b + c;
}
// Функция для каррирования
function curry(fn) {
return function curried(...args) {
if (args.length >= fn.length) {
return fn(...args);
} else {
return function (...args2) {
return curried(...args.concat(args2));
};
}
};
}
const curriedSum = curry(sum);
console.log(curriedSum(1, 2, 3)); // Вывод: 6
const add5 = curriedSum(5);
console.log(add5(2, 3)); // Вывод: 10
console.log(add5(4, 5)); // Вывод: 14

В приведенном выше примере функция sum каррируется с использованием функции curry. В итоге получается функция curriedSum, которая принимает аргументы по одному. Когда все аргументы собраны, она вызывает исходную функцию sum.
Каррирование может быть полезным при разработке функций, которые требуют частичного применения аргументов или при создании более универсальных функций, которые могут быть использованы для создания других функций с фиксированными аргументами.
С помощью карирования вы можете легко изменять и композировать функции для создания новых функций с требуемым поведением.

#js | #теория
  • ❤ 2
  • 👍 2
More from @free_html_lessons
  1. Oct 1, 2026Макет для тренировки (skeyndor) Перейти к макету 🧑‍💻 #макет@free_html_lessons
  2. Sep 30, 2026Post #3068
  3. Sep 30, 2026Post #3067
  4. Sep 29, 2026Задача: Быстрая пятёрка Брайан, Миа, Хан, Жизель и Доминик участвуют в уличной гонке. Прав…
  5. Sep 28, 2026Применение редких html атрибутов на практике. 1 часть Читать 👨‍💻 #полезнаястатья
  6. Sep 27, 2026Подборка лучших постов за прошлую неделю Лучшие статьи @free_html_lessons: 1. Функции в Ty…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →