Что означает функция вида `const render = (a) => (b) => {}`?
Как работает функция например const render = (elements) => (path, value, prevValue) => {}
? Что за странная запись?
3 года назад
Ivan Gagarinov
Ответы
11
Функция вида const a = (param1) => (param2) => {};
возвращает новую функцию, которая принимает параметр param2
. Чтобы лучше понять как это работает, распишем функцию на несколько строк:
Внутри функции a
создаётся функция b
и возвращается.
Это нужно для того, чтобы сохранить в функции какие-то дополнительные данные. Например, выше функция b
имеет доступ к param1
. Такой способ часто применяется в обработчиках событий:
Когда функция содержит какую-то внешнюю переменную — это еще называют замыканием.
3 года назад
Ivan Gagarinov
4
Это по сути замыкание?
3 года назад
Артём Мельников