Пока я писал пост о Функциях JavaScript, я понял, что функции-выражения нуждаются в отдельном посте! Итак, здесь я пишу обо всех функциях, свойствах и использовании функциональных выражений. Некоторые из них я узнал, когда писал предыдущий пост, но они определенно интересны. Так вот!

Функциональные выражения — это просто функции, которые не объявлены как единое целое. Они присваиваются переменной как выражение.

В отличие от обычных функций, они рассматриваются как выражения. В этом случае функция «foo» является переменной и не поднимается поверх области видимости. Следовательно, их можно использовать только после их объявления.

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

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

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

В приведенном выше примере контекстом функции будет объект. Вывод функции, назначенной переменной 3, будет: «Некоторое значение» и значение.