从同一名称空间内部通过其完全限定名称调用命名空间函数

时间:2013-04-12 03:30:51

标签: javascript namespaces javascript-namespaces revealing-module-pattern

您是否有任何理由想要使用其完全限定名称调用使用显示模块模式创建的命名空间中定义的函数?例如,A对B低于?

例A。

var namespace = (function defineNamespace() {

    function sayNoThankYou() { }

    function callMeMaybe() {
        sayNoThankYou();
    }

    return {
        callMeMaybe: callMeMaybe,
        sayNoThankYou: sayNoThankYou
    };

}());

例B。

var namespace = (function defineNamespace() {

    function sayNoThankYou() { }

    function callMeMaybe() {
        namespace.sayNoThankYou();
    }

    return {
        callMeMaybe: callMeMaybe,
        sayNoThankYou: sayNoThankYou
    };

}());

1 个答案:

答案 0 :(得分:1)

示例中namespace.sayNoThankYou();sayNoThankYou();之间只有一个区别:this函数中sayNoThankYou的值。如果您在函数内部不使用this,则它们是相同的。