我知道这个问题的答案可能很明显,但我似乎被卡住了,所以我决定提出一个问题。变量值没有明显的原因变化
在我的jQuery $(document).ready
函数中,我创建了一个名为logged
的变量。我已经将它设置这样的:var logged = 0;
接下来我的代码,其中,根据返回的数据将logged
变量设置为1
或不改变后的块。
$.post("url/script.php",
function(d, s){
if (s) {
if (d == "1") {
logged = 1;
}
if (d == "0") {
//Do stuff
}
} else {
//Do other stuff
}
console.log(logged); //Prints 1
});
底下,我有一个if
声明,检查是否记录是1
与否,但高于console.log
命令表明,logged
变量重置为0
:
console.log(logged); //Prints 0
if (logged == 1) {
//Do stuff
}
有谁知道为什么?
在此先感谢。
它没有复位,它正在建立一个异步调用 - 并且在调用完成之前您的“if”逻辑正在运行。 – tymeJV