Столкнулся с такой ситуацией, что пишут о том, что xmlhhtrequest устарел и за fetch будущее, но тем не менее 90% статей про асинхронность с xmlhhtrequest, да и вообще он мало обсуждаем.Почему так?
ммм первый раз слышу что мало обсуждают его тык, fetch
Метод fetch – это XMLHttpRequest нового поколения. Он предоставляет улучшенный интерфейс для осуществления запросов к серверу: как по части возможностей и контроля над происходящим, так и по синтаксису, так как построен на промисах.
Ingernirated: гугл отменили? Промисы это обещания. Пишите мамой клянусь это треугольник, потом вызываете метод верю и не верю и обрабатывете. А еще можно кошерно обернуть обещание в асинк и работать с ним синхронно без блокировок.
Eugene Aristarhov: в том-то и дело, что кроме, в фетч используется промис, ничего не пишут, да и о промисе ничего не добовляют что это и зачем он там.
думал код с фетчем короче, а начал писать, выходит не меньше
Eugene Aristarhov: раз пошла такая пьянка, подскажите пожалуйста в чём я ошибся?
function ajax() {
fetch("ajax.php", {method:"get"}).
then((response) => response.text()).
then((text) {
response.status;
console.log(response.text());
var div = document.createElement("DIV");
div.className = "new";
var text = response.text();
div.innerHTML = text;
var dom = document.querySelector(".list");
dom.appendChild(div);
}).catch(alert);
}
В тхен передается функция, а значит либо .then((param=>{......}) либо по старинке .then(function(param{......}) и просто написание в теле функции респонс статус вообще улыбает.и да, раз в вен передается параметр текст, надо понимать, что в него возвращен ретурн из предыдщущено тхена, то есть респонс текст, отсюда var text = response.text(); вообще дичь несусветная. Тебе надо учить синтаксис js и только потом познавать инструменты.