为什么在使用IIFE时写下一组空括号?

时间:2016-02-13 22:02:10

标签: javascript angularjs

JS新手。使用jonhpapa的Angular样式指南,我注意到当他建议使用IIFE闭包时,他总是添加一组额外的空括号。为什么呢?

(function() {
'use strict';

angular
    .module('app')
    .factory('logger', logger);

function logger() { }
})();

1 个答案:

答案 0 :(得分:1)

详细说明我的评论 - 这是一个命名函数的例子:

function x() { console.log('x'); }

为了调用该函数,您需要在它的名称之后添加括号,如下所示:

x();

对未命名的函数执行相同的操作以调用它们:

(function() { console.log('x'); })();