NodeJS. Как работают Function Expression.
В этой статье мы поговорим об использовании function expression в платформе NodeJS.
В будущих статьях мы будем говорить о модулях, ведь модули – это очень важная часть всей платформы. Однако они очень активно используют function expression и именно по этой причине мы сейчас вкратце разберем, как все работает, чтобы у вас в будущем не было проблем с пониманием работы модулей.
Давайте рассмотрим самую что ни на есть обычную функцию:
function sayHi() {
console.log('Hello, world!');
}
sayHi();
У этой функции есть название, дальше код, который будет выполнен при вызове функции. Думаю, тут пояснять нечего. Если вы запустите эту функцию в NodeJS, то увидите надпись, написанную в круглых скобках.
Теперь рассмотрим function expression:
var sayHi = function() {
console.log('Hello, world!'');
};
sayHi();
Думаю, вы заметили, что тут есть некоторые отличия. Во-первых, функция теперь стала анонимной, т.к. у нее нет имени после ключевого слова function. Чтобы иметь возможность ее вызывать и чтобы она не была сразу уничтожена после запуска кода, мы присваиваем ее переменной с каким-нибудь названием. Именно это название мы дальше и используем, чтобы сослаться на функцию. Заметьте, это уже не имя функции, а имя переменной, которая хранит ссылку на функцию, поскольку функция – это обычный объект.
Теперь рассмотрим функцию, принимающую другую функцию в аргументе:
function call(func) {
func();
}
var sayHi() = function() {
console.log('Hello, world!');
};
call(sayHi);
Что происходит здесь? Мы создаем функцию, которая в качестве аргумента принимает другую функцию, которую и вызывает. Вот тут нам и пригодилась function expression.
Повторюсь, мы рассмотрели все это только для того, чтобы вы поняли, как работают модули, которые мы будем рассматривать в будущих статьях. На самом деле, это далеко не все отличия этих способов записи функции. Это достаточно важная и интересная тема и вы просто обязаны ее знать, если хотите быть хорошим javascript-разработчиком. Если же у вас нет таких знаний, то советую обратить внимание на видеокурс JavaScript, jQuery и Ajax с Нуля до Гуру, где вы сможете подчерпнуть много полезных сведений!
А у меня на этом все. Спасибо за внимание!
-
- Михаил Русаков
Комментарии (1):
Махаил у вас там ошибка: var sayHi() = function() { // var sayHi = function() {
Ответить
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.