offline version v3
Запись на курсы по HTML, CSS, JavaScript, PHP, фреймворкам и CMS,
а также: помощь в поиске работы и заказов, стажировка на реальных проектах→
⊗jsPmFCInr 264 of 503 menu

Вызов функции на месте в JavaScript

Сейчас мы разберем прием, который позволяет вызвать функцию прямо на месте ее объявления. Такая конструкция называется Immediately Invoked Function Expression (IIFE).

Давайте посмотрим на примере. Пусть у нас есть вот такое функциональное выражение:

let func = function() { console.log('!'); }; func(); // выведет '!'

Давайте теперь не будем присваивать нашу функцию в переменную, а вызовем ее сразу же, "на месте". Для этого после функции поставим круглые скобки:

+function() { console.log('!'); // выведет '!' }();

Наличие плюса в данном случае является обязательным условием, так как без него функция станет Function Declaration, а их на месте (да еще без имени) вызывать нельзя. Конечно же, вместо плюса может быть все, что угодно, - главное, чтобы наша функция была функциональным выражением.

Определите, не запуская код, что выведется в консоль:

!function() { console.log('!'); }();

Определите, не запуская код, что выведется в консоль:

function() { console.log('!'); }();
enru