--- title: Функции первого класса slug: Glossary/First-class_Function tags: - Glossary - Глоссарий translation_of: Glossary/First-class_Function original_slug: Глоссарий/First-class_Function ---
Если язык программирования имеет функции первого класса, то значит они трактуются как объекты, то есть могут быть переданы другим функциям и их можно вернуть из функций. Так же их можно присваивать переменным.
/* функция не имеет имени и находится в правой части команды присваивания переменной.*/ var dog = function(num) { for (var i = 0; i < num; i++) { alert("Woof"); } }; dog(3); //Эту функцию можно вызвать через переменную dog.
Такое использование ключевого слова function — внутри команды, как в команде присваивания, — называется функциональным выражением. В отличие от объявления, эта функция не имеет имени. Кроме того, результатом этого выражения является значение, которое затем присваивается переменной dog. Что это за значение? Мы присваиваем его переменной dog, а затем вызываем через эту переменную, значит, это есть ссылка на функцию.