在 jQuery 中是否可以创建一个设置变量的函数,然后我可以在另一个函数中访问该变量。即我需要一个可以在页面上的任何位置访问的全局变量。
例子
$.fn.getRedemptionID = function(){
var myVar = data.DATA[0].item1;
}
在 jQuery 中是否可以创建一个设置变量的函数,然后我可以在另一个函数中访问该变量。即我需要一个可以在页面上的任何位置访问的全局变量。
例子
$.fn.getRedemptionID = function(){
var myVar = data.DATA[0].item1;
}
1)全局变量不好。
2) 是的:
// explicit global (preferred)
$.fn.getRedemptionID = function(){
window.myVar = data.DATA[0].item1;
}
// implicit global
$.fn.getRedemptionID = function(){
myVar = data.DATA[0].item1;
}
只需这样做:
var myGlobalVar = null;
$.fn.getRedemptionID = function(){
myGlobalVar = data.DATA[0].item1;
}
然后您可以在任何地方访问 myGlobalVar :)
jQuery 仍然是 JavaScript,并且仍然可以像 JavaScript 一样使用。即,如果您在任何块之外声明某些内容,则它是全局的并且可以在任何地方访问。
例如
var global = 42;
$(document).ready(function() {
global = $('#something').val();
});
更好的方法是使用闭包,以下列方式保存变量值:
var application = (function(){
var my_var;
return {
get_var: function(){
return my_var;
},
set_var: function(value){
my_var = value;
}
}
})();
application.set_var(34);
application.get_var;
这比使用全局变量要好。