Otrasentencia disponible enJavaScript (así como en otros lenguajes de programación) es try ... catch, resultando de gran utilidad para detectar errores y procesarlos de la forma deseada.
En caso de que ocurra algún error dentro del try se procesará la parte del catch().
En el siguiente ejemplo se generaría un error al procesar la suma (puesto que la variable 'y' no está definida) y se mostraría el mensaje especificado dentro del catch():
var x = 33;
try
{
x = x + y;
}
catch( e )
{
alert( "error: " + e.message );
}
Observa que catch() recibe un Objeto con información sobre el error ocurrido, pero dependiendo del navegador web usado contendrá unas u otras de las siguientes propiedades:
- Internet Explorer: message, description, number, name.
- Resto de los navegadores web más usados: stack, arguments, type, message, name.
Para mostrar un mensaje de error usaremos la propiedad message, ya que es reconocida en todos los navegadores web.
Si especificamos una sección finally, su contenido se procesará en todo caso (ocurra un error o no):
var x = 33;
try
{
x = x + y;
}
catch( e )
{
alert( "error: " + e.message );
}
finally
{
alert("En finally");
}

Vea también: [ Sentencias de control Condicionales o Selectivas ] - [ Sentencias de control Repetitivas o Iterativas ]