我在理解jQuery变量范围时遇到了麻烦。
var myVar;
function getMyVar() {
myVar = 'test';
}
$(window).load(function() {
getMyVar();
});
alert(myVar);
此代码将警告“未定义”,我需要它显示“测试”,并且我想在这里了解我的范围问题。
最佳答案
问题在于,在加载窗口之前将立即调用getMyVar,而不会立即执行警报。因此,警报在定义变量之前发生。这与范围无关,而与窗口加载函数的异步执行有关。