JavaScript - (function(){}())?

gsk*_*lee 3 javascript

可能重复:
javascript函数vs.(function(){...}());

我在TodoMVC的几个JS 源代码中看到了这种模式:

(function() {
    // ...
    // ...
}());
Run Code Online (Sandbox Code Playgroud)

这种模式的具体含义是什么?请注意,它不是自调用函数(function() {})();

ale*_*lex 8

这种模式的具体含义是什么?请注意,它不是自调用函数(function() {})();

你错了,它一个立即调用的函数表达式(IIFE).括号只是在不同的地方,但它们以完全相同的方式绑定.

人们经常以你描述的方式来实现它以验证JSLint.

它用于作用域,因为JavaScript只有函数和全局作用域(忽略let).