Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как сделать паузу в цикле for? (https://javascript.ru/forum/misc/16910-kak-sdelat-pauzu-v-cikle.html)

ILL-JAH 28.04.2011 01:49

Как сделать паузу в цикле for?
 
Как сделать паузу в цикле for? А то браузер ругается, когда число итераций более 9.999.999.999.

Gvozd 28.04.2011 02:36

что значит "ругается"?

ILL-JAH 28.04.2011 12:59

Вложений: 1
Вот так ругается:

Gvozd 28.04.2011 13:51

в указанном вами примере не нужно 9.999.999.999. итераций.
простые множители вычисляются в худшем случае за корень квадратный
оптимизируйте используемый алгоритм

ILL-JAH 28.04.2011 14:49

Спасибо, конечно, но это не ответ на мой вопрос. Могу переформулировать: существует ли возможность принудительно ПРИостанавливать работу скрипта и цикла в частности? Существует ли в JavaScript аналог таким инструкциям из других языков, как pause или wait?

poorking 28.04.2011 14:58

нет, нельзя так, есть setTimeout и setInterval, но они выполнение кода не останаливают, а откладывают действие на некоторое время, а следующий код выполняется дальше

melky 28.04.2011 15:16

та не. можно

но это "можно" загрузит проц на 100%

function sleep (m) {var then = new Date(new Date().getTime() + m); while (new Date() < then) {}}



а еще можно было поискать в гугле

я за 5 секунд нашел

???

poorking 28.04.2011 15:28

melky,
Все равно интересно :) сразу подумалось о создании полноценного модального окна, правда которое вешает браузер ))) интересно, на кнопку возможно будет нажать?..

melky 28.04.2011 15:46

если хром, то можно) вкладка зависнет и все. на 5 сек

в мозилле нельзя будет нажать ~ 5 секунд зависнет браузер

в опере хз

а вот в ИЕ.. не знаю :)

у меня баганый IE 9, и ,когда в него заходишь, на экране потом остаются отпечатки от него ( кнопки, контекстные меню ("вставить")


не хочу проверять)) но там,по идее, тоже 5 сек максимум

в сафари хз

она есть..чтобы была)

poorking 28.04.2011 16:09

Проверил в мозилле, не нажать кнопку... Вобщем просто паузы делать покатит, а ожидание до действия не выйдет, увы (


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