Javascript Modular在函数之间传递数据

时间:2016-03-23 21:07:53

标签: javascript

我试图以这种方式在函数之间传递数据:

var mySample = {

    myFunction1: function(param1) {  

        alert(param1 + 'is here');

    },

    myFunction2: function() {  

        alert('need' + param1 + ' here')

    }

};

这个没有通过,所以我的问题是......我可以在上面分享数据/变量吗?

2 个答案:

答案 0 :(得分:2)

这些只是功能,所以它们彼此没有关系。但是,如果您首先尝试拨打myFunction1来设置值,然后myFunction2来检索它,则可以将param1值分配给字段:

var mySample = {
    myFunction1: function(param1) {  
        this._param1 = param1;
    },
    myFunction2: function() {  
        alert('need ' + this._param1 + ' here')
    }
};

mySample.function1("A");
mySample.function2();

答案 1 :(得分:1)

    var mySample = {
        paramCache: null,

        myFunction1: function(param1) {  
            var self = this; //mySample

            alert(param1 + 'is here');
            self.paramCache = param1;

        },

        myFunction2: function() {  
            var self = this; //see above

            alert('need' + self.paramCache+ ' here')

        }
};

这将是在Object中执行此操作的一种方法。 但这需要在myFunction1();之前调用myFunction2();

在这种情况下,var self = this;部分可能没用,但我总是这样做,所以......是的......它取决于你。

编辑:猜猜某人有同样的想法,但速度快了一段时间:)