将变量设置为函数,但不应执行该函数
Set variable to function but that function should not get executed
我正在 someMethod1 中设置一些变量,并想将该变量传递给 someMethod2。在这里,我只想将变量设置为 someMethod2 函数,但不应调用该方法。稍后需要在某些事件(单击)上调用它。我怎样才能实现这一目标?请帮助我。
someMethod1 = function() {
var test = "testText";
someMethod2(test)
};
someMethod2 = function(check) {
var a = check;
};
您可以通过在全局范围内保存变量来做到这一点:
var sharedVars = {};
function someMethod1() {
sharedVars.a = 'testText';
}
function someMethod2(check) {
var a = (check)? check : sharedVars.a;
}
或创建一些对象来存储和 returns 键值:
var sharedStorage = {
data: {},
set: function(key, value) {
this.data[key] = value;
return this;
},
get: function(key, fallback) {
return this.data[key] || fallback;
}
};
function someMethod1() {
sharedStorage.set('a', 'testText');
}
function someMethod2() {
var a = sharedStorage.get('a');
}
在外面声明var test
,然后在里面设置someMethod1()
。现在您可以在 click event
上调用 someMethod2()
并将 test
设置为 a
。
var test;
someMethod1 = function() {
test = "testText";
};
someMethod2 = function() {
var a = test;
};
我正在 someMethod1 中设置一些变量,并想将该变量传递给 someMethod2。在这里,我只想将变量设置为 someMethod2 函数,但不应调用该方法。稍后需要在某些事件(单击)上调用它。我怎样才能实现这一目标?请帮助我。
someMethod1 = function() {
var test = "testText";
someMethod2(test)
};
someMethod2 = function(check) {
var a = check;
};
您可以通过在全局范围内保存变量来做到这一点:
var sharedVars = {};
function someMethod1() {
sharedVars.a = 'testText';
}
function someMethod2(check) {
var a = (check)? check : sharedVars.a;
}
或创建一些对象来存储和 returns 键值:
var sharedStorage = {
data: {},
set: function(key, value) {
this.data[key] = value;
return this;
},
get: function(key, fallback) {
return this.data[key] || fallback;
}
};
function someMethod1() {
sharedStorage.set('a', 'testText');
}
function someMethod2() {
var a = sharedStorage.get('a');
}
在外面声明var test
,然后在里面设置someMethod1()
。现在您可以在 click event
上调用 someMethod2()
并将 test
设置为 a
。
var test;
someMethod1 = function() {
test = "testText";
};
someMethod2 = function() {
var a = test;
};