匿名 JavaScript 函数(IIFE)f f f f 做什么?

匿名 JavaScript 函数,也称为立即调用函数表达式(Immediately Invoked Function Expression,简称 IIFE),是一种常用于模块化 JavaScript 代码的技术。IIFE 可以帮助开发人员避免全局变量污染、保护私有变量以及构建可重复使用的代码。

如何编写一个 IIFE

一个 IIFE 是由一个匿名函数和一个立即执行操作符包裹而成的。下面是一个基本的 IIFE 的示例:

----------- -
   -- -------
-----

在这个示例中,(function(){...}) 定义了一个匿名函数,然后 () 立即调用了该函数。

IIFE 的作用

避免全局变量污染

IIFE 是避免全局变量污染的好方法。因为 IIFE 中定义的变量只在 IIFE 内部可见,不会影响到全局作用域。

----------- -
  --- - - --
-----

--------------- -- -------- --------------- - -- --- -------

保护私有变量

IIFE 可以保护私有变量,使其不受外部访问,并且可以更好地封装代码。

--- ------- - ----------- -
    --- ----- - --
    ------ -
        ---------- ---------- -
            --------
        --
        ---------- ---------- -
            --------
        --
        ------ ---------- -
            ------ ------
        -
    --
-----

----------------------------- -- -
--------------------
----------------------------- -- -
--------------------
----------------------------- -- -

在这个示例中,我们定义了一个计数器对象,该对象包含三个方法:increment()decrement()value()。其中 count 是私有变量,因为它只能在 IIFE 内部访问。

构建可重复使用的代码

IIFE 还可以用于构建可重复使用的代码模块。你可以将你的代码封装在 IIFE 中,然后将其作为参数传递给其他函数或模块进行使用。

----------------- --------- -
    --- --------- - -
        -- ---
    --

    ---------------- - ----------
---------- ----------

在这个示例中,我们定义了一个自己的库,并将其分配给 myLibrary 变量。然后我们将 myLibrary 分配给 window 对象,以便全局范围内访问该库。

结论

IIFE 是一种强大的技术,可以帮助你提高代码的可读性和可维护性。当你需要避免全局变量污染、保护私有变量或构建可重复使用的代码时,请考虑使用 IIFE。

希望本文能够对你有所帮助。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/10881