Из ссылки, которую я прочитал в MDN, сказано
Если TRUE (по умолчанию), выполнение функции JavaScript будет продолжаться, пока ответ сервера еще не пришел.
Это A в AJAX.
Я использовал AJAX, но потом я был немного сбит с толку, когда прочитал это. Думаю, проблема в том, что я не совсем понимаю концепцию AJAX. Я, конечно, знаю, что AJAX не обновляет страницу, что означает, что соединение с сервером и ответ полностью выполняются в фоновом режиме.
Но что я могу представить в соответствии с этой ссылкой, так это то, что если у меня есть такой код в мой JavaScript:
//true, therefore process the function while server retrieves url
var xmlResponse;
var url = "http://example.com/file.xml";
xml_req.open("GET", url, true);
xml_req.onreadystatechange = function() {
if(xml_req.readyState == 4 && xml_req.status == 200) {
if(xml_req.responseText != null)
xmlResponse = xml_req.responseXML; //server response may not yet arrive
else {
alert("failed");
return false;
}
};
xml_req.send(null);
Разве это не означает, что xmlResponse может быть неопределенным в том смысле, что сервер все еще получает данные? Может ли кто-нибудь объяснить, что на самом деле представляет собой поток выполнения в технологии AJAX? Заранее спасибо.