Как прекратить выполнение Javascript, завершение / смерть / фатальное утверждение и т. Д.? - PullRequest
1 голос
/ 09 марта 2011

У меня есть цикл в Javascript, я хочу запустить console.log() в определенной итерации, а затем завершить. Каков наилучший способ сделать это?

Я хочу что-то вроде Perl

die Dumper \@foo;

Ответы [ 3 ]

2 голосов
/ 09 марта 2011

Вы можете выбросить исключение:

throw "Help I have fallen and cannot get up";

Не совсем то же самое, но (по моему опыту) не так уж часто встречаться при обработке исключений в обычных JavaScript-кодах, вызывающих споры в DOM, так что они обычно вырываются из любого цикла обработки событий. Тем не менее, это не то же самое, что любой окружающий try блок поймает то, что вы бросаете.

1 голос
/ 09 марта 2011

Вы имеете в виду завершить цикл?

while(true) {
console.log()
if(condition) {break};
}

команда break выходит из цикла

, но в javascript нет функции kill или exit.

0 голосов
/ 09 марта 2011

Поскольку JavaScript основан на событиях, сценарий не контролирует время его завершения - нет die или exit.

Если это не так, лучший вариант - это преобразовать код в функцию, из которой вы можете return, или использовать именованный блок:

foo: {
    // do work
    break foo;
    // not executed;
}
...