可能重复:
JavaScript 对象/函数/类声明周围的括号是什么意思?
什么是 (function($) {})(jQuery); 意思是?
我正在尝试了解 Edge 的工作原理,以便我可以使用自己的代码,
我以前没有遇到过,但这意味着什么:
(function(symbolName) {
//CODE
})("stage");
可能重复:
JavaScript 对象/函数/类声明周围的括号是什么意思?
什么是 (function($) {})(jQuery); 意思是?
我正在尝试了解 Edge 的工作原理,以便我可以使用自己的代码,
我以前没有遇到过,但这意味着什么:
(function(symbolName) {
//CODE
})("stage");
它是一个匿名函数,它被定义然后用参数“stage”调用
这类似于做:
var myfunc = (function (symbolName) {
//CODE
});
myfunc("stage");
或者
function myfunc(symbolName) {
//CODE
}
myfunc("stage");
除了当函数以这两种方式中的任何一种定义时,它将被“提升”到块作用域的顶部——但那是另一个话题。
在 Javascript 中,您只需键入以下内容即可定义匿名函数:
(function(){alert("Hello")}); /* ok, this do nothing, but it is correct */
也可以直接调用函数:
(function(){alert("Hello")})(); /* alert is displayed */
如果函数有参数,则必须指定参数:
(function(args){alert(args)})("Hello"); /* alert is displayed with the passed arguments */
我建议你这个教程。