Показать сообщение отдельно
  #1 (permalink)  
Старый 29.01.2016, 20:15
Профессор
Отправить личное сообщение для hoax Посмотреть профиль Найти все сообщения от hoax
 
Регистрация: 20.09.2012
Сообщений: 151

Нарушается очередность выполнения с onreadystatechange
Добрый день.

Со страницы запуска делаю вызов GET-запроса, код выглядит примерно так -

function aj() {
	
	var x = new XMLHttpRequest();
		
		x.open("GET", 'url', true);
		x.send();
		
			x.onreadystatechange = function() {
		
			if (x.readyState == 4 && x.status == 200) {
			
	
				alert(8);			
				
		}
		
	
}


}


 aj();
 alert(9);



В данном случае сначала выполняется alert(9), после чего идет alert(8).
Смотрю по консоли, функция aj() - действительно выполняется первоначально, однако до статуса ответа, когда добирается до onreadystatechange, то сразу перескакивает, и запускает alert(9), только после этого продолжает читать код, в том числе и onreadystatchange и запускает alert(8)
Ответить с цитированием