English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Операторы и объявления переменных JavaScript
try ... catchПредложение обозначает блок кода, который нужно попробовать, и определяет ответ при возникновении исключения (ошибки).
Предложение try состоит из одного блока try, который содержит один или несколько предложений. {} всегда используется для одного предложения.
Необходимо наличие至少 одного предложения catch или finally. Это предоставляет три формы предложения try:
try...catch
try...finally
try...catch...finally
ИспользованиеtryПредложение может определить блок кода, который будет выполнен, и проверить на ошибки при выполнении.
catchПредложение позволяет определить блок кода, который будет выполнен, если в блоке try произойдет ошибка.
finallyВ определении, после try и catch, вы можете выполнять код, независимо от результата.
Внимание: Предложения catch и finally являются необязательными, но при использовании предложения try вам необходимо использовать одно из них (если их нельзя использовать одновременно).
ИспользованиеthrowОпределение пользовательских ошибок (выбрасывание исключений). Если выthrowИспользование вместе с try и catch позволяет определить поток программы и создавать пользовательские сообщения об ошибках (см. также "Дополнительные примеры").
Вы можете найти информацию о нас вУроки по JavaScript исключениямПознакомьтесь с дополнительной информацией о исключениях.
try { //try_statements-строки, которые нужно попробовать } catch(err) { //catch_statements-строки для обработки ошибок } finally { //finally_statements-строки, которые нужно выполнить независимо от результата try / catch }
try { aaalert("Hello world"); } catch(err) { document.getElementById("result").innerHTML = err; }Проверьте‹/›
Все браузеры полностью поддерживают try ... catch строки:
Statement | |||||
try...catch | является | является | является | является | является |
Параметр | Описание |
---|---|
try_statements | Строки для выполнения. |
err | Идентификатор объекта ошибки, связанного с catch-подпрограммой. См.Объект ошибки. |
catch_statements | (опционально) Строки, выполняемые при возникновении исключительной ситуации в блоке try. Если ошибка не произошла, этот код никогда не будет выполняться. |
finally_statements | (опционально) Строки, выполняемые после завершения try-строки. Эти строки выполняются независимо от того, была ли вызвана исключительная ситуация или捕获лена исключительная ситуация. |
Версия JavaScript: | ECMAScript 3 |
---|
ВfinallyВ declarative, вы можете выполнять код, try и catch после этого, независимо от результата:
try { aaalert("Hello world"); } catch(err) { document.getElementById("result").innerHTML = err; } finally { document.getElementById("result").innerHTML += "<h3>Выполнена строка finally</h3>"; }Проверьте‹/›
catchиfinallyСтроки являются необязательными, но при использовании try-строки вам нужно использовать одну из них (если вы не можете использовать их одновременно):
try { aaalert("Hello world"); } finally { document.getElementById("result").innerHTML = "Конечное выполненное выражение"; }Проверьте‹/›
ИспользованиеthrowСтрока создания пользовательской ошибки (вызывает исключение):
function getRectArea(width, height) { if (isNaN(width) || isNaN(height)) { throw "Параметр не является числом!"; } } try { getRectArea(5, 'Z'); } catch(err) { document.getElementById('para').innerHTML = err; }Проверьте‹/›
Проверка ввода, если значение ошибочно, вызывается исключение (err).catchКаптюре исключения (err) и отображение пользовательского сообщения об ошибке:
var x = document.querySelector("input").value; try { if(x == "") throw "is Empty"; if(isNaN(x)) throw "Not a Number"; if(x > 10) throw "too High"; if(x < 5) throw "too Low"; } catch(err) { document.getElementById("para").innerHTML = "Input " + err; }Проверьте‹/›
Учебник JavaScript:Исключения JavaScript
Референс JavaScript:Объект ошибки JavaScript
Референс JavaScript:Оператор throw JavaScript