Добрый день.
Есть несколько наболевших вопросов по Javasсript.
1) Как сделать паузу?
• Не разрывая поток вычислений (т.е. setTimeout не подходит).
• Не используя бесконечные циклы (жрут проц дай боже).
2) Как вклинить в поток ответ от сервера?
1. Получить строку от пользователя.
2. Отправить её на сервер.
3. В зависимости от ответа, вернуть из функции нужное значение.
Как это сделать в одном потоке?
Вот просто на примере.
Есть vk, у него есть api.
И есть функция "check_vk", которая проверяет, соответствует ли строка правильному формату (id + циферки).
Методом jsonp (добавляя на страницу тег sсript с нужным значением src) я получаю ответ от сервера.
Но проблема в том, что получаю я его _после_ того, как закончится текущее вычисление (в котором мне этот ответ нужен).
----------------
Т.е. по-хорошему, это должно выглядеть так:
• Получил строку.
• Отправил на сервер.
• Получил ответ.
• В зависимости от ответа сделал нужный return.
Чтобы можно было простым check_vk(var) в других функциях проверять формат строки.
Но я вот упираюсь в то, что скрипт добавляется сразу, а ответ обрабатывается (или выполняется добавленный скрипт) - после того, как завершится вызов check_vk, который этот скрипт на страницу добавил.
И как это дело разрешить - я не знаю.
Пока что, единственное найденное решение весьма "такое себе" - повторный вызов check_vk при потере полем фокуса. Т.к. на момент второго вызова - ответ от сервера уже получен и лежит в переменной.