Найти в Дзене
Илья Дмитриев

JavaScript. Урое №28. Анонимные функции, функции высшего порядка.

Функции, не имеющие имени, называются анонимными. Такие функции необходимы тогда, когда имя функции не требуется Рассмотрим примеры. Создадим переменную element, в которую сохраним ссылку на какой-нибудь элемент и привяжем к событию onclick анонимную функцию: Допустим вам понадобилось имя функции, например для открепления через removeEventListener. Можно дать ей имя: Функции высшего порядка в JavaScript Функция высшего порядка — это функция, способная принимать другую функцию как аргумент или возвращает другую функцию как результат. Одну функцию можно объявить внутри другой. При таком варианте внутренняя функция не будет доступна извне: Это нужно для того, чтобы не захламлять глобальную область видимости и функция внутри функции не доступна из вне. Еще один пример как функция может возвращать другую функцию: При таком варианте если посмотреть на результат внешней функции, то увидим исходный код внутренней функции: Еще один вариант вызова внутренний функции это вызов внешней функции
Оглавление

Функции, не имеющие имени, называются анонимными. Такие функции необходимы тогда, когда имя функции не требуется Рассмотрим примеры.

Создадим переменную element, в которую сохраним ссылку на какой-нибудь элемент и привяжем к событию onclick анонимную функцию:

-2

Допустим вам понадобилось имя функции, например для открепления через removeEventListener.

Можно дать ей имя:

-3

Функции высшего порядка в JavaScript

Функция высшего порядка — это функция, способная принимать другую функцию как аргумент или возвращает другую функцию как результат.

Одну функцию можно объявить внутри другой. При таком варианте внутренняя функция не будет доступна извне:

-4

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

Еще один пример как функция может возвращать другую функцию:

-5

При таком варианте если посмотреть на результат внешней функции, то увидим исходный код внутренней функции:

-6

Еще один вариант вызова внутренний функции это вызов внешней функции с двумя круглыми скобками:

-7

Функция как параметр другой функции

Добавим третью функцию, которая будет принимать первым и вторым параметром функции, которые возвращают какие-либо числа.

Функция good сохранит первую функцию в переменную num1, а вторую - в num2, после этого сложит числа, которые эти функции возвращают и выведет результат на экран:

-8

Еще один пример: сейчас в функцию и good передадим в качестве параметров разные функции и увидим разный результат:

-9

Предлагаю вам поупражняться и придумать своих 7-10 вариантов подобный функций.