📜  IIFE js - Javascript (1)

📅  最后修改于: 2023-12-03 15:31:22.230000             🧑  作者: Mango

IIFE(JS Immediately Invoked Function Expression)

IIFE是Javascript的一种常见的模块化代码组织方式,它可以在定义函数后立即执行该函数。

IIFE的用法

IIFE的语法形式如下:

(function() {
  // 此处为函数体
})();

上述代码定义了一个匿名函数,并使用括号将函数体括起来。最后再使用一对括号调用了这个匿名函数。

我们也可以给这个匿名函数命名:

(function namedFunc() {
  // 此处为函数体
})();

这样我们就可以在函数内部通过函数名称来递归自己。

在IIFE中,我们可以定义私有变量和函数,避免了全局变量的污染,同时也可以防止其他代码覆盖我们的变量和函数。

IIFE的示例

下面是一个IIFE的示例,它返回一个对象,该对象有一个方法用于对输入的数字进行平方计算:

const square = (function () {
  const resultObj = {};

  function squareNum(num) {
    return num * num;
  }

  resultObj.calculate = function(num) {
    return squareNum(num);
  }

  return resultObj;
})();

console.log(square.calculate(4)); // 16
总结

IIFE是一种灵活的代码组织方式,可以用于避免全局变量的污染,同时也可以防止代码的覆盖。在大型项目中,IIFE可以更好的划分代码块,让代码更加易读易维护。