javaScript中的alert()问题
详情看图片,如果将这个varfalg=null的话,在第三个弹出的alert就是null,求解释,谢谢!...
详情看图片,如果将这个var falg=null的话,在第三个弹出的alert就是null,
求解释,谢谢! 展开
求解释,谢谢! 展开
3个回答
展开全部
我感觉应该是$.post用的异步方式的原因。
执行顺序应该是这样的:yzCard -> alert("方法外面"+falg); 这里线程就阻塞了
异步线程 -> 执行 $.post -> alert("data:" + data); -> alert("flag=true后面:" + falg);
这个 alert("方法外面"+falg) 应该是第一个弹出的,只不过你的 $.post里面的代码是异步执行的,覆盖的这个alert,当你点击完$.post 里面的两个alert 才看到 alert("方法外面"+falg) 。然后点击确认后 才开始执行后面的if(falg==true)
由于$.post 里面的代码已经将falg 置为true 了 所有 就出现了 alert("这是个if判断,这说明falg=true");
执行顺序应该是这样的:yzCard -> alert("方法外面"+falg); 这里线程就阻塞了
异步线程 -> 执行 $.post -> alert("data:" + data); -> alert("flag=true后面:" + falg);
这个 alert("方法外面"+falg) 应该是第一个弹出的,只不过你的 $.post里面的代码是异步执行的,覆盖的这个alert,当你点击完$.post 里面的两个alert 才看到 alert("方法外面"+falg) 。然后点击确认后 才开始执行后面的if(falg==true)
由于$.post 里面的代码已经将falg 置为true 了 所有 就出现了 alert("这是个if判断,这说明falg=true");
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询