JavaScript: карри (карри) функция

Основы JavaScript (синтаксис ES6): Упражнение 46 с решением

Напишите программу JavaScript для карри (карри) функции

Согласно wiki. haskell.org «Каррирование — это процесс преобразования функции, которая принимает несколько аргументов, в функцию, которая принимает только один аргумент и возвращает другую функцию, если какие-либо аргументы все еще необходимы. fxy = g (x, y), однако каррированная форма обычно более удобен, поскольку позволяет частичное применение.

Примечание. Используйте рекурсию. Если количество предоставленных аргументов (args) достаточно, вызовите переданную функцию fn. В противном случае верните каррированную функцию fn, которая ожидает остальные аргументы. Если вы хотите каррировать функцию, которая принимает переменное количество аргументов (функция с переменным числом аргументов, например Math.min ()), вы можете дополнительно передать количество аргументов второму параметру arity.

Пример решения:

HTML-код:

       Карри (curries) функция        

Код JavaScript:

 //# Источник https://bit.ly/2neWfJ2 const curry = (fn, arity = fn.length  , ... args) => arity  

Пример вывода:

 2562 

Блок-схема :

Живая демонстрация:

См. Pen javascript-basic-упражнение-1-46 от w3resource (@ w3resource) на CodePen.

Назад: Напишите программу на JavaScript для разделения значений на две группы, если элемент в фильтре является истинным, соответствующий элемент в коллекции принадлежит к первой группе; в противном случае он принадлежит ко второй группе.
Далее: Напишите программу на JavaScript для выполнения глубокого сравнения двух значений, чтобы определить, эквивалентны ли они.

Оцените статью
nanomode.ru
Добавить комментарий