在下面的代码中,doThisFirst()
保证之前执行doThisSecond()
?
var xmlhttp = window.XMLHttpRequest ? new XMLHttpRequest() :
new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
doThisSecond(xmlhttp.responseText);
}
};
xmlhttp.open("GET", "/myscript.php?", true);
xmlhttp.send();
doThisFirst();
如果不是,我怎么能保证这个执行顺序(除了在结束时设置一个标志doThisFirst()
然后while(!flag);
在执行之前轮询的天真解决方案doThisSecond()
)?我正在寻找一个纯 Javascript 解决方案(没有 jquery)。
重要说明:我不想同步执行 AJAX 请求,它会doThisSecond()
在doThisFirst()
.