Javascript 匿名函数表达式

Javascript anonymous function expression

早上好我的时区

我看到了下面的代码片段

var Tabs = (function () {
                  function Tabs() {}

                  Tabs.annotations = [
                    new ComponentMetadata({...}),
                  ];

                  return Tabs;
                })

像这样声明匿名函数在括号内和不在括号内有什么区别

var Tabs = function () {
                      function Tabs() {}

                      Tabs.annotations = [
                        new ComponentMetadata({...}),
                      ];

                      return Tabs;
                    }

我用的是控制台,打印出来的是一样的

提前致谢 最好的问候

函数表达式后面可以跟括号。 例如下面的代码会导致语法错误,因为函数定义后面不能跟括号。

function(){
    //code
}(); 

然而,您可以通过用括号括起来将函数定义转换为函数表达式:

(function(){
    //code
})();

现在变成了立即调用的匿名函数:)。