Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Остановить выполнение скрипта (https://javascript.ru/forum/misc/1601-ostanovit-vypolnenie-skripta.html)

Nonam 22.08.2008 02:40

Остановить выполнение скрипта
 
Собственно сам вопрос, существует ли в JavaScript функция которая остановит дальнейшее выполнение скрипта, что то вроде exit в php, или как такое можно реализовать?

ZoNT 22.08.2008 09:32

window.stop()

Андрей Параничев 22.08.2008 14:31

ZoNT,
На сколько я знаю, window.stop() останавливает загрузку окна, а не выполняемый скрипт.

ZoNT 22.08.2008 14:38

вполне может быть - никогда не пользовался... :)

Infocatcher 23.08.2008 21:37

throw что-нибудь;, например,
throw "stop";

Если нужна возможность продолжения, то смотреть в сторону
window.alert(msg);
window.confirm(msg);
window.prompt(msg, defaultValue);
Впрочем, «window.» можно опускать.

Nonam 24.08.2008 04:04

Спасибо ребят, то что надо

twolf 01.05.2009 18:08

подниму темку.
Сейчас потребовалось тоже остановить выполнение скрипта в определенном месте.
но когда пишу throw "stop", firebug ругается "uncaught exception: stop"
как бы так остановить чтоб и жук не ругался ?

Gvozd 01.05.2009 18:23

throw new Error("stop");

вот так насколько я помню правильно бросать исключения
только теперь фаербаг все равно ругается)
Код:

throw new Error("stop");
НО!
если обернуть исключение в блок try-catch, на что он и расчитан, то соответсвенно никакой ошибки в фаербаге не выдается
ни при одном из двух вариантов
try
	{
	throw "dsf";
	//throw new Error("dsf");
	}
catch(e)
	{
	alert(e);
	}

оберните весь глобальный скрипт в исключение, и все будет норм

twolf 01.05.2009 18:31

в том то и дело что try-catch у меня ловит throw с ошибками, выдает пользователю сообщение и останавливает скрипт.
Типа такого:
try
    {
    // код
    if(Бог есть == true)  throw "верующий";
    }
catch(e)
    {
    alert(e);
    throw "stop"; // скрипт дальше не должен выполняться.
    }

а после алерта скрипт продолжит выполняться

Gvozd 01.05.2009 18:42

try{

try
    {
    // код
    if(Бог есть == true)  throw "верующий";
    }
catch(e)
    {
    alert(e);
    throw "stop"; // скрипт дальше не должен выполняться.
    }
//этот блок уже не выполнится

}catch(e){}

попробуй так.
подходит?


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