我没有找到一个要求类似于这个模式的帖子,抱歉,如果我错过了它.
无论如何,我在许多jQuery插件或脚本中重复看到这种模式:
(function () {
...........
}());
Run Code Online (Sandbox Code Playgroud)
它的目的是什么?它有名字吗?
谢谢!
它也被称为立即调用的函数表达式
Ben Alman有一篇关于IIFE使用的好文章,以及为什么"自动执行匿名函数"不是最好的术语:
立即调用函数表达式最有利的副作用之一是,因为不使用标识符而立即调用此未命名或匿名函数表达式,所以可以使用闭包而不会污染当前作用域.
[... T]术语"自执行"有点误导,因为即使正在执行该功能,它也不是正在执行的功能.此外,"匿名"是不必要的特定,因为立即调用的函数表达式可以是匿名的或命名的.至于我更喜欢"被引用"而非"被执行",这是一个简单的头韵问题; 我认为"IIFE"看起来和听起来都比"IEFE"好.
| 归档时间: |
|
| 查看次数: |
221 次 |
| 最近记录: |