传递变量:使用模块的最佳实践

时间:2015-02-07 20:32:23

标签: javascript ajax variables module

我正在完成学校作业,并且问自己以下哪些代码最具逻辑性。

我的问题的焦点在于我使用变量的方式。将值作为参数赋值给函数或者像第一个例子那样调用变量是不是更好。

这一个:

var TEST = function()
{
    my.testVariable = "testing";

    SECONDFCTION.testfunction();

    return my;
}(TEST || {}, jQuery));


var SECONDFCTION = function()
{
    my.testfunction = function()
    {
        // SOME CODE 

        console.log(SECONDFUNCTION.testVariable);
    }

    return my;
}(SECONDFCTION || {}, jQuery));

或者这个:

var TEST = function()
{
    var testVariable = "test"

    SECONDFCTION.testfunction(testVariable);

    return my;
}(TEST || {}, jQuery));


var SECONDFCTION = function()
{
    my.testfunction = function(testVariable)
    {
        // SOME CODE 

        console.log(testVariable);
    }

    return my;
}(SECONDFCTION || {}, jQuery));

1 个答案:

答案 0 :(得分:1)

传递参数几乎总是更好,更自然的模式。

当你进行多个函数调用时,依赖于全局变量是错误的并且变得非常混乱。此外,如果您有两个相对独立的模块,例如您的示例,则不希望couple them too tightly