Как я могу выйти из сценария JavaScript так же, как PHP exit
или die
? Я знаю, что это не лучшая практика программирования, но мне нужно.
javascript
exit
die
Nir
источник
источник
return;
может быть достаточно в зависимости от ваших требований, действует как die () без параметров.Ответы:
Эквивалент JavaScript для PHP
die
. Кстати, это просто звонкиexit()
(спасибо splattne):источник
Функции «выхода» обычно выходят из программы или скрипта вместе с сообщением об ошибке в качестве параметра. Например умереть (...) в PHP
Эквивалент в JS - сигнализировать об ошибке с помощью ключевого слова throw следующим образом:
Вы можете легко проверить это:
источник
Даже в простых программах без дескрипторов, событий и тому подобного лучше всего поместить код в «основную» функцию, даже если это единственная процедура:
Таким образом, когда вы хотите остановить программу, вы можете использовать «возврат».
источник
Если вам все равно, что это ошибка, просто напишите:
Это остановит ваш основной (глобальный) код. Полезно для некоторых аспектов отладки / тестирования.
источник
window.fail
не определено в текущих браузерах.mikeyMouse;
- ошибка прекратится. Это быстро и грязно.Есть много способов выйти из сценария JS или Node. Вот наиболее актуальные:
Если вы находитесь в REPL (т.е. после запуска
node
в командной строке), вы можете набрать.exit
для выхода.источник
В моем случае я использовал
window.stop
API, который похож на нажатие кнопки X в вашем браузере:источник
Поместите
debugger;
ключевое слово в свой код JavaScript, где вы хотите остановить выполнение. Затем откройте инструменты разработчика вашего любимого браузера и перезагрузите страницу. Теперь он должен остановиться автоматически. Откройте раздел Источники ваших инструментов:debugger;
ключевое слово выделено, и у вас есть возможность возобновить выполнение скрипта.Я надеюсь, что это помогает.
Больше информации на:
https://developer.mozilla.org/de/docs/Tools/Debugger
http://www.w3schools.com/js/js_debugging.asp
источник
Я думаю, что на этот вопрос ответили, нажмите здесь для получения дополнительной информации. Ниже приведен краткий ответ.
Вы также можете использовать свой браузер для добавления точек останова, каждый браузер похож, проверьте информацию ниже для вашего браузера.
Для Chrome Информации изломов нажмите здесь
Для Firefox Информации изломов нажмите здесь
Для проводника точек разрыва информации нажмите
для Safari точки излома информации нажмите здесь
источник
Если вы ищете способ принудительно прекратить выполнение всего Javascript на странице, я не уверен, что есть официально санкционированный способ сделать это - похоже, что это может быть угрозой безопасности (хотя для честно говоря, я не могу думать о том, как это будет с моей головы). Обычно в Javascript, когда вы хотите, чтобы ваш код прекратил работать, вы просто
return
выполняете какую-либо функцию. (Thereturn
необязательное утверждение, если оно является последним в функции и функция не должна возвращать значение). Если есть какая-то причина, по которой возвращение недостаточно для вас, вам, вероятно, следует отредактировать более подробную информацию в вопросе о том, почему вы думаете, вам это нужно, и, возможно, кто-то может предложить альтернативное решение.Обратите внимание, что на практике интерпретаторы Javascript большинства браузеров просто останавливают текущий скрипт, если они сталкиваются с ошибкой. Таким образом, вы можете сделать что-то вроде доступа к атрибуту неустановленной переменной:
и это, вероятно, прервет сценарий. Но вы не должны на это рассчитывать, потому что это совсем не стандартно, и это действительно кажется ужасной практикой.
РЕДАКТИРОВАТЬ : ОК, может быть, это не был хороший ответ в свете Олафура. Хотя
die()
функция, с которой он связан, в основном реализует мой второй абзац, то есть просто выдает ошибку.источник
бросить "";
Это неправильное использование концепции, но, вероятно, единственный вариант. И, да, вам придется сбросить все прослушиватели событий, как указано в принятом ответе. Вам также понадобится одна точка входа, если я прав.
Вдобавок к этому: вам нужна страница, которая сообщает вам по электронной почте, как только она выдается - вы можете использовать, например, Raven / Sentry для этого. Но это означает, что вы производите ложные срабатывания. В таком случае вам также необходимо обновить обработчик по умолчанию, чтобы отфильтровать такие события или установить такие события на игнорирование на панели инструментов Sentry.
window.stop ();
Это не работает во время загрузки страницы. Останавливает также декодирование страницы. Таким образом, вы не можете использовать его, чтобы предложить пользователю вариант страницы без javascript.
отладчик;
Останавливает выполнение только при открытом отладчике. Прекрасно работает, но не доставляется.
источник
В JavaScript есть несколько способов, ниже приведены некоторые из них
Способ 1:
Способ 2:
Способ 3:
Способ 4:
Способ 5:
напишите свою пользовательскую функцию, используя вышеуказанный метод и вызывайте там, где вам нужно
Примечание: если вы хотите просто приостановить выполнение кода, вы можете использовать
источник
Эта небольшая функция довольно близка к имитации выхода PHP (). Как и с другими решениями, больше ничего не добавляйте.
источник
Просто создайте условие BOOL, здесь нет необходимости в сложном коде.
Если даже если вы включите его в true / или несколько раз, то оба варианта дадут вам одну линию решения / не несколько - в основном просто.
источник
Если вы используете любую неопределенную функцию в скрипте, тогда скрипт остановится из-за "Uncaught ReferenceError". Я попытался с помощью следующего кода и первые две строки выполнены.
Я думаю, это лучший способ остановить сценарий. Если есть другой способ, пожалуйста, прокомментируйте меня. Я также хочу знать другой лучший и простой способ. Кстати, я не получил выход или умереть встроенную функцию в Javascript, как PHP для завершения сценария. Если кто-то знает, пожалуйста, дайте мне знать.
источник
Если вы просто хотите остановить выполнение следующего кода без «выдачи» какой-либо ошибки, вы можете временно переопределить,
window.onerror
как показано вcross-exit
:источник
Я использую iobroker и легко удалось остановить скрипт с
источник
Не применимо в большинстве случаев, но у меня было много асинхронных скриптов, запущенных в браузере, и как хак я
чтобы остановить все.
источник
Я знаю, что это старый, но если вы хотите подобную
die()
функцию PHP , вы можете сделать:Использование:
В приведенном выше примере будет напечатано только «Hello».
источник
я использую этот кусок кода, чтобы остановить выполнение:
Вы получите ошибку консоли, но она хорошо работает для меня.
источник
Это пример того, что если условие существует, то завершить сценарий. Я использую это в моем клиентском JavaScript SSE, если
нельзя анализировать прямо из анализа JSON ...
... в любом случае, общая идея такова:
это прекратит / умрет ваш скрипт javasript
источник
я использую оператор return вместо throw, поскольку throw выдает ошибку в консоли. лучший способ сделать это - проверить состояние
это просто останавливает выполнение программы из этой строки, вместо того, чтобы выдавать какие-либо ошибки в консоли.
источник
if (condition) { new new }
илиif (condition) { purpleMonkeyDishwasher(); }
.