Друг попросил меня создать функцию, которая выполняет следующие функции: f1()()()()(0)
должен давать результат как 4. f1()(0)
должен выдавать результат как 1. Это число предшествующих круглых скобок до 0 равно прошло. Я тщательно изучил, как это сделать. Есть несколько концепций для объединения строк: например, IIFE, Анонимные функции и Лексическая область. Использует ли это более продвинутую концептуальную функцию javascript, которая должна быть известна? Here is the image of what needs to be donejavascript: закрытие, анонимные функции, iife
0
A
ответ
0
Отсутствие передовых концепций. Вам нужно только знать, как вернуть функцию из другой функции.
Я бы предпочел, чтобы вызвать функцию f0
, потому что f0(0)
очевидно должна возвращать 0
. Тогда мы можем представить себе все такие функции, которые возвращают уровень их скопления — например, f42(0)
возвращает 42
.
При вызове без параметров, f0()
должен возвращать f1
, так что f0()(0)
является 1
, и так далее. Это непростая задача:
function f0(x) {
return (x === 0) ? 0 : f1(x);
}
Очевидно, что мы не хотим записывать бесконечность таких функций. Давайте создадим функцию завод, который будет строить их автоматически по мере необходимости:
function factory(level) {
function f_level(x) {
return (x === 0) ? level : factory(level + 1);
}
return f_level;
}
Завод всегда возвращает функцию, а именно factory(0)
функция f0
вы хотели.
Смежные вопросы
- 1. IIFE VS анонимное закрытие.
- 2. CoffeeScript - Как применять закрытие и анонимные функции
- 3. Javascript - зачем возвращать закрытие с помощью IIFE?
- 4. JavaScript Анонимные функции
- 5. Javascript анонимные функции sync
- 6. Javascript Вопросы по функции - IIFE
- 7. Директивы AngularJS и закрытие IIFE
- 8. Почему вложенный IIFE не создает закрытие?
- 9. JavaScript Анонимные функции в Java
- 10. Понимание Анонимные функции в Javascript
- 11. JavaScript анонимные функции в скрипте
- 12. Показывать внутри анонимные функции Javascript
- 13. JavaScript IIFE
- 14. Закрытие JavaScript: возврат функции
- 15. Javascript функции закрытие работает
- 16. Закрытие Javascript и IIFE (сразу вызываемые функциональные выражения)
- 17. Что означает закрытие javascript на анонимной функции и когда использовать закрытые анонимные функции?
- 18. Функции, функции и анонимные функции
- 19. Hook IIFE (самообеспечение вызова) JavaScript функции
- 20. Анонимные функции
- 21. IIFE вызов в JavaScript
- 22. Javascript IIFE - задняя дверь?
- 23. Javascript DOM-0 IIFE
- 24. Javascript: как назвать IIFE
- 25. javascript/jQuery анонимные функции для заполнения массива
- 26. Анонимные функции Javascript и глобальные переменные
- 27. JavaScript-как анонимные функции в C#
- 28. Как наследовать анонимные функции javascript, назначенные переменным?
- 29. JavaScript-переменные и самоназывающие анонимные функции
- 30. Как анонимные функции работают в jQuery/Javascript?