<JavaScript Declaraciones de referencia
Ejemplo
En este ejemplo, hemos hecho un error en el código (en el bloque try).
El ejemplo se supone que debe alertar "Welcome guest!" , Pero alerta está mal escrito.
El bloque catch detecta el error, y ejecuta un código para manejarlo:
<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
try {
adddlert("Welcome guest!");
}
catch(err) {
document.getElementById("demo").innerHTML = err.message;
}
</script>
</body>
</html>
Inténtalo tú mismo " Más "Try it Yourself" ejemplos a continuación.
Definición y Uso
El try / catch / finally maneja todos o algunos de los errores que pueden ocurrir en un bloque de código, al tiempo que ejecutan código.
Los errores pueden ser los errores cometidos por el programador, errores debidos a la entrada equivocada, y otras cosas imprevisibles codificación.
La sentencia try le permite definir un bloque de código para hacerse la prueba de errores mientras está siendo ejecutado.
La sentencia catch le permite definir un bloque de código que se ejecutará, si se produce un error en el bloque try.
La sentencia finally le permite ejecutar código, después de tratar de atrapar, independientemente del resultado.
Nota: La captura y, finalmente, las declaraciones son opcionales, pero hay que usar uno de ellos (if not both) durante el uso de la instrucción try.
Consejo: Cuando se produce un error, JavaScript normalmente parar, y generar un mensaje de error. Utilice el tiro instrucción para crear un error personalizado (throw an exception) . Si utiliza tirar junto con tratar de atrapar, se puede controlar el flujo del programa y generar mensajes de error personalizados.
Para obtener más información acerca de los errores de JavaScript, leer JavaScript Errores Tutorial.
Soporte del navegador
Declaración | |||||
---|---|---|---|---|---|
try/catch/finally | Sí | Sí | Sí | Sí | Sí |
Sintaxis
try {
tryCode - Block of code to try
}
catch( err ) {
catchCode -
Block of code to handle errors
}
finally {
finallyCode - Block of
code to be executed regardless of the try / catch result
}
Los valores de los parámetros
Parámetro | Descripción |
---|---|
tryCode | Necesario. Bloque de código a ensayar de errores mientras está siendo ejecutado |
err | Se requiere si se utiliza con la captura. Especifica una variable local que se refiere al error. La variable puede referirse al objeto Error (contiene información sobre el error producido, al igual que el mensaje " 'addlert' no está definido"). Si la excepción fue creado por la sentencia throw, la variable se refiere al objeto especificado en la instrucción throw (ver "Más ejemplos") |
catchCode | Opcional. Bloque de código que se ejecutará, si se produce un error en el bloque try. Si no ocurre ningún error, este bloque de código nunca se ejecuta |
finallyCode | Opcional. Bloque de código que se ejecuta independientemente del resultado try / catch |
Detalles técnicos
Versión de JavaScript: | 1.4 |
---|
Más ejemplos
Ejemplo
Este ejemplo examina de entrada. Si el valor es incorrecto, una excepción (err) es lanzada.
La excepción (err) es capturado por la declaración de capturas y se muestra un mensaje de error personalizado:
<!DOCTYPE html>
<html>
<body>
<p>Please input a number between
5 and 10:</p>
<input id="demo" type="text">
<button type="button"
onclick="myFunction()">Test Input</button>
<p id="message"></p>
<script>
function myFunction() {
var message, x;
message =
document.getElementById("message");
message.innerHTML = "";
x =
document.getElementById("demo").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) {
message.innerHTML =
"Input " + err;
}
}
</script>
</body>
</html>
Inténtalo tú mismo " Ejemplo
La sentencia finally le permite ejecutar código, después de tratar de atrapar, independientemente del resultado:
function myFunction()
var message,
x;
message =
document.getElementById("message");
message.innerHTML = "";
x =
document.getElementById("demo").value;
try {
if(x == "") throw "Empty";
if(isNaN(x))
throw "Not a number";
if(x >
10) throw "Too high";
if(x <
5) throw "Too low";
}
catch(err)
{
message.innerHTML = "Error: " +
err + ".";
}
finally {
document.getElementById("demo").value
= "";
}
}
Inténtalo tú mismo " Páginas relacionadas
JavaScript Tutorial: Errores de JavaScript
Referencia de JavaScript: JavaScript sentencia throw
<JavaScript Declaraciones de referencia