在使用模块模式时,为什么要为函数指定名称

时间:2015-01-13 10:48:44

标签: javascript function module

我查看了Mojarra 2.2.8的jsf.js文件,并使用模块模式查看了它们。像这样:

name.space = function() {

    var utilFunction = function utilFunction() {
        // some implementation
    };

    return {
        exposedFunction: function exposedFunction() {
            // using utilFunction
        }
    };
}();

给这些功能命名有什么好处吗?而不是使用匿名函数。无论如何,它们都被绑定到变量或同名属性。

这是一种最佳做法吗?它可能会改善调试吗?

我只是问,因为我经常看到模块模式与匿名函数一起使用,现在想知道。

1 个答案:

答案 0 :(得分:0)

我认为只有在使用匿名函数进行明显阅读时才有道理,例如:

async.waterfall[
    function makeOne () {},
    function makeTwo () {},
];