--- title: IIFE slug: Glossary/IIFE tags: - JavaScript - Словник - Шаблон проектування translation_of: Glossary/IIFE ---
Негайно виконуваний функціональний вираз (IIFE, Immediately Invoked Function Expression) — {{glossary("function", "функція")}} у {{glossary("JavaScript")}}, яка виконується одразу після оголошення.
(function () {
statements
})();
Це шаблон проектування, також відомий як {{glossary("Self-Executing Anonymous Function","самовиконувана анонімна функція")}}, який складається з двох основних частин:
(). Це запобігає доступу до змінних у ідіомі IIFE, а також забрудненню глобальної області видимості.(), через який рушій JavaScript безпосередньо інтерпретуватиме функцію.Функція стає функціональним виразом, який негайно виконується. Змінна всередині виразу недоступна за його межами.
(function () {
var aName = "Баррі";
})();
// Змінна aName є недоступною з-поза меж області видимості
aName // викидає "Uncaught ReferenceError: aName is not defined"
Присвоєння IIFE змінній зберігає значення, яке повертає функція, а не саме визначення функції.
var result = (function () {
var name = "Баррі";
return name;
})();
// Негайно створює результат:
result; // "Баррі"