freeCodeCamp/guide/russian/certifications/javascript-algorithms-and-d.../functional-programming/understand-functional-progr.../index.md

3.4 KiB
Raw Blame History

title localeTitle
Understand Functional Programming Terminology Понять терминологию функционального программирования

Понять терминологию функционального программирования

метод

Как и в последнем вызове, вы должны вызвать метод getTea и сохранить его в переменной. Только на этот раз у вас есть 2 переменных для хранения 2 отдельных наборов данных. Вы увидите, что getTea() такая же, как и раньше, только теперь она принимает 2 отдельных параметра. Первый параметр - это функция, поэтому нам нужно передать либо prepareGreenTea() либо функцию prepareBlackTea() , за которой следует второй параметр numOfCups который может быть numOfCups как целое число.

Решение

В этом упражнении мы назначаем результат функции более высокого порядка для переменных. Для этого мы вызываем функцию с функцией обратного вызова в качестве параметра.

Подсказка:

javascript const basketOne = makeBasket(addFruit, 10)

## Решение:

`` `Javascript

/ **

  • Длительный процесс приготовления зеленого чая.
  • @return {string} Чашка зеленого чая. ** / const prepareGreenTea = () => 'greenTea';

/ **

  • Получите заданное количество чашек чая.

  • @param {function (): string} prepareTea Тип функции приготовления чая.

  • @param {number} numOfCups Количество необходимых чашек чая.

  • @return {Array } Количество чайных чашек. ** / const getTea = (prepareTea, numOfCups) => { const teaCups = [];

    для (пусть cups = 1; cups <= numOfCups; чашки + = 1) { const teaCup = prepareTea (); teaCups.push (Teacup); }

    return teaCups; };

    // Добавьте код ниже этой строки const tea4GreenTeamFCC = getTea (prepareGreenTea, 27); // :) const tea4BlackTeamFCC = getTea (prepareBlackTea, 13); // :) // Добавьте код выше этой строки

    console.log ( tea4GreenTeamFCC, tea4BlackTeamFCC );

    `` `

Обозначение кода:

В вышеприведенном решении мы передали функции prepareGreenTea() и prepareBlackTea() качестве параметров или функций обратного вызова для функций getTea() , назначаемых нашим двум постоянным переменным tea4BlackTeamFCC и tea4GreenTeamFCC . Таким образом, глобальные переменные не изменяются, и мы можем добавить неограниченное количество различных вариантов методов prepareTea() поскольку это функция обратного вызова, передаваемая функции getTea() порядка getTea() .