Tratamiento de errores en Javascript
Escrito por J.F. el Miércoles, 8 de Agosto del 2007 a las 14:32
En ocasiones nuestro código Javascript se hace muy extenso, y quizás es díficil contemplar todas las posibilidades, y encontrar todos los errores. Por ello, podemos utilizar las claúsulas try y catch para personalizar nuestros errores, on crear un error estándar, evitando así, que el error sea mostrado en la consola Javascript del navegador. Veamos pues como es la estructura para filtrar los errores:
-
try
-
{
-
//Código Javascript
-
}
-
catch(err)
-
{
-
//Lo que se hará en caso de error
-
//Error personalizado
-
}
Como vemos, la claúsula try es la que llevará el código Javascript que deseemos, y en caso de que en el ocurra algún error, se ejecutará lo que hayamos puesto dentro de catch. Puede que solo te interese introducir ese control de errores en algunas ocasiones, pero sobre todo ten en mente que debe pasar lo más desapercibido posible al usuario, ante todo que no incomode. Veamos un ejemplo, en el que supongamos que el código Javascript a ejecutar es muy importante, y en caso de error vamos a ofrecerle al usuario la posibilidad de continuar viendo la página(avisándole de que contiene errores) o volver a la página principal. Como podrás observar se ha tratado de mostrar un mensaje mediante la función echo, que no tiene validez en Javascript, por lo que se produce el error y se ejecuta la claúsula catch. Aquí está el código completo:
-
<script type="text/javascript">
-
var mensaje=""
-
function error_personalizado()
-
{
-
try
-
{
-
echo("Hola Mundo");
-
}
-
catch(err)
-
{
-
mensaje="Error al ejecutar ésta página.\n\n"
-
mensaje+="Pulse aceptar para continuar viendo la página,\n"
-
mensaje+="o Cancelar para volver a la página principal.\n\n"
-
if(!confirm(mensaje))
-
{
-
document.location.href="http://yournightmare86.byethost18.com/"
-
}
-
}
-
}
-
</script>
-
</head><body>
-
<input type="button" value="Error personalizado" onclick="error_personalizado()" />
-
</body>
-
</html>
Categoria: Javascript
- Añadir este post a
- Del.icio.us -
- Meneame -
- Digg -
- Webeame
Entradas relacionadas
Deja un comentario
