IIFE(Immediately Invoked Function Expression)即立即调用函数表达式,在JavaScript中是一种常见的设计模式。IIFE可以在定义后立即执行,它有自己的作用域,不会污染全局命名空间,可以保护变量不受外部环境的影响。
IIFE的基本语法如下:
(function () {
// 函数体
})();
下面是IIFE的详细解析和案例。
- 定义IIFE
(function () {
// 函数体
})();
在这个例子中,我们定义了一个匿名函数,并立即执行它。注意,函数的最后有一对小括号()
,这是调用函数的语法。
- 传递参数
(function (message) {
console.log(message);
})('Hello, World!');
在这个例子中,我们向IIFE传递了一个参数'Hello, World!'
。IIFE内部可以接收这个参数,并在函数体中使用。
- 保护变量作用域
(function () {
var counter = 0;
function increment() {
counter++;
console.log(counter);
}