Возврат результата функции в функцие
Добрый день.
function a(param) { var result = 0; if(param) result = param * 2; var obj_1 = document.getElemetnById("obj_1"); obj_1.onload = function() { result = this.value * 2; } return result; //Вот здесь нужно вернуть то, что вернула функция обработчика события obj_1.onload } Подскажите пожалуйста как вернуть результат функции-обработчика события в функцие ? Заранее благодарен за ответ. |
Как ты себе это представляешь?
Результат функции-обработчика возникает в момент события. А результат функции "a" - по факту вызова. Причем, управление не перейдет к обработчику события, пока текущая функция не завершится, даже если событие уже произошло, пока функция работала. |
Вот так представляю :
function a(link) { var result = new Array; if (!link) return result; req = XMLHttpRequest(); req.onload = function() { if (req.readyState == 4) { result = JSON.parse(req.responseText); } }; req.open("GET", link, true); req.send(null); return result; //Вот здесь нужно вернуть то, что вернула функция обработчика события req.onload } Замыкание какое-то должно быть, или не знаю как правильно называется, но думаю что способ какой-то есть. |
Цитата:
|
Часовой пояс GMT +3, время: 00:21. |