我需要在ajax调用后设置一个全局变量。全局变量取决于ajax的success
数据,我想在其他函数中访问全局变量。
全局变量应在某个单击事件中清除。如果再次调用ajax,我想用一个新值设置全局变量。
我尝试在函数外声明var,如var globalvariable
,并在ajax调用后设置全局变量值,如:
window.globalvariable = data;
但我得到的只是空的结果。
实现这一目标的正确方法是什么?
您不需要访问像window.globalvariable
这样的全局变量,只要globalvariable
就足够了。
您可以检查变量是否被赋值:
if(typeof globalvariable == 'undefined')
// variable is not assigned
else
// use value of that variable.
如果在函数中使用关键字var定义变量,则将其视为局部变量。
但如果您用out"var"关键字声明变量,那么它将被视为全局变量。
由于ajax在大多数情况下都是异步的,所以应该只在回调中检查变量,而不是在触发ajax的函数中检查变量。