立即调用函数表达式 (IIFE)

17 Mar 2025 | 阅读 2 分钟

它是一个 JavaScript 函数,一旦定义就会立即运行。 IIFE (Immediately Invoked Function Expression) 可以用于避免块内的变量提升。 它允许公开访问方法,同时保留函数中定义的变量的隐私。

IIFE 是一种设计模式,也称为自执行匿名函数。 它包含两个主要部分

  • 第一部分是具有词法作用域的匿名函数,它包含在分组运算符 () 中。
  • 第二部分创建 IIFE,JavaScript 引擎将直接解释该函数。

语法

让我们尝试通过以下示例来理解 IIFE 的概念。

示例

输出

Hello World

将函数转换为 IIFE

我们可以使用以下步骤将常规函数转换为 IIFE

  • 假设任何常规函数定义。
  • 将该定义包装在括号对中,这将创建函数表达式。
  • 最后,我们必须添加一对括号和一个分号,以标记语句的结尾。

让我们在以下示例中看看相同的说明

示例

输出

Regular function
Immediately Invoked Function Expression

关于 IIFE 的要点

  • 立即调用函数表达式 (IIFE) 有它们的作用域。 在函数表达式中声明的变量在函数外部不可用。
  • 与其他函数一样,IIFE 也可以是匿名的或命名的。
  • IIFE 也可以是参数化的。 例如,

示例

输出

100
200
300

下一主题ES6 数组