Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Возвращаемые значения функции (https://javascript.ru/forum/misc/53132-vozvrashhaemye-znacheniya-funkcii.html)

kilohertz_. 22.01.2015 01:26

Возвращаемые значения функции
 
Как сделать что бы xhr возвращалось по вызову var = ajax(...)?

function ajax(addr, string, method, async) { 
	var xhr = new XMLHttpRequest();
	method = 'POST';
	async = true;
	
	xhr.open(method,addr,async);
	if(method == 'POST') xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xhr.send('type=ajax');
	xhr.onreadystatechange = function() {if(xhr.readyState == 4) return xhr}
	}

losos100 22.01.2015 02:51

ajax=function(addr, msg){
 var xhr=new XMLHttpRequest
 xhr.open("POST", addr, false)
 xhr.send(msg)
 return xhr
} 

xhr=ajax("/address", "foo")
alert([xhr, xhr.status, xhr.responseText])

Очень хрновый вариант. Если ответ от сервера не придет вовремя, пользователь будет ждать все время ожидания ответа. Поток заблокирован. Асинхронно -- никак.

kilohertz_. 22.01.2015 02:55

в этом суть. надо придумать как асинхронно

losos100 22.01.2015 03:04

kilohertz_.,
Для начала советую тебе придумать как асинхронно вытереть жопу, до того, как ты начал срать. Если получиться, приступай к XMLHttpRequest смело.

losos100 22.01.2015 03:55

kilohertz_.,
это ты идиот там меня ламером назвал? Ты, блять кретин конченый, вернешь объект, мудило, никто не запрещает, блять
ajax=function(){
 var xhr=new XMLHttpRequest
 xhr.open("POST", "/bla-bla")
 xhr.send("foo")
 xhr.onreadystatechange=function(){if(xhr.readyState===4) alert(xhr.responseText)}
 return xhr
}
alert(ajax())

Только в объекте этом будет совсем не то, что твой тупой мозг ожидает. А асинхронная ф-ция отработает тогда когда ей положено, независимо от твоих хотелок, мудак.

krasovsky 23.01.2015 14:16

losos100 - это наверно аватар некого krutoy, все бродит и ищет себе признания в этом мире, но увы

losos100 23.01.2015 14:18

krasovsky,
Признание дегенератов путающих аватары с никами меня не интересует, расслабься.

losos100 23.01.2015 14:32

krasovsky,
Я, кста, не граммар, но для грядущих поколений важно донести мысли великого вождя в правильной интерпретации и наилучшем виде, поэтому:

losos100 - это, наверноe, юзернейм некоeго krutoy, все брeдит и ищет себе признания в этом мире, но, увы

Потомки, думаю, оценят. Трам-парам...

ЗЫ но ты не отчаивайся, знавал я чела, который по две ошибки в слове делал, правда он монголом был. Так что, ты пока рекорд не побил.

krasovsky 23.01.2015 14:42

Вау, бедняга, как бы у тебя сердечного приступа не случилось, а то кровавая пенка изо рта так и хлещет )
Давай я тебе помогу с определением слова "аватар", а то вижу ты не в курсе что он не только к фоточке в бложике применяется ) - https://ru.wikipedia.org/wiki/%D0%90...82%D0%B0%D1%80

А теперь давай - голос, детка голос!

losos100 23.01.2015 14:49

krasovsky,
Зачетный отмаз, всех убедил в своей компетентности.


Часовой пояс GMT +3, время: 21:05.