getTea
из последнего вызова, чтобы обрабатывать различные запросы на чай. Мы можем модифицировать getTea
чтобы принять функцию в качестве параметра, чтобы иметь возможность изменять тип чая, который он готовит. Это делает getTea
более гибким и дает программисту больше контроля при изменении запросов клиента. Но сначала давайте рассмотрим функциональную терминологию: Callbacks
вызовы - это функции, которые были проскальзываны или переданы в другую функцию, чтобы решить вызов этой функции. Возможно, вы видели, как они передавались другим методам, например, в filter
, функция обратного вызова сообщает JavaScript критериям фильтрации массива. Функции, которые могут быть назначены переменной, переданы в другую функцию или возвращены из другой функции, как и любое другое нормальное значение, называются функциями first class
. В JavaScript все функции являются функциями first class
. Функции, которые принимают функцию в качестве аргумента или возвращают функцию в качестве возвращаемого значения, называются функциями higher order
. Когда функции передаются другой функции или возвращаются из другой функции, то те функции, которые передаются или возвращаются, можно назвать lambda
. tea4GreenTeamFCC
и tea4BlackTeamFCC
, соответственно. Обратите внимание, что функция getTea
была изменена, поэтому теперь она принимает функцию в качестве первого аргумента. Примечание. Данные (количество чашек чая) поставляются в качестве последнего аргумента. Мы обсудим это более подробно на более поздних уроках. tea4GreenTeamFCC
должна содержать 27 чашек зеленого чая для команды.
testString: 'assert(tea4GreenTeamFCC.length === 27, "The tea4GreenTeamFCC
variable should hold 27 cups of green tea for the team.");'
- text: Переменная tea4GreenTeamFCC
должна содержать чашки зеленого чая.
testString: 'assert(tea4GreenTeamFCC[0] === "greenTea", "The tea4GreenTeamFCC
variable should hold cups of green tea.");'
- text: Переменная tea4BlackTeamFCC
должна содержать 13 чашек черного чая.
testString: 'assert(tea4BlackTeamFCC.length === 13, "The tea4BlackTeamFCC
variable should hold 13 cups of black tea.");'
- text: Переменная tea4BlackTeamFCC
должна содержать чашки черного чая.
testString: 'assert(tea4BlackTeamFCC[0] === "blackTea", "The tea4BlackTeamFCC
variable should hold cups of black tea.");'
```