|
Herramientas para desarrolladores : Cursos, manuales y guías de referencia : Cursos : JavaScript avanzado : Captura de excepciones con try y catch1. IntroducciónLa corrección de errores cuenta, desde la aparición de las últimas versiones de los navegadores (IE 5 o superior y Netscape 6) con dos sentencias nuevas que permiten la detección y gestión de excepciones. Se trata de las sentencias try y catch, que se relacionan con el objeto Exception, generado cuando se produce algún error durante la ejecución del script. Aunque puede parecer de poca utilidad, hay que observar que determinadas condiciones de error pueden no implicar la terminación abrupta de la ejecución del programa. Utilizando la captura de excepciones (catch en inglés significa precisamente esto), podemos incorporar en el script una forma elegante de eludir el error. En lenguajes de programación como Java, un uso típico de la secuencia try ... catch es el acceso a ficheros o recursos que no se sabe si estarán disponibles. Si el recurso no está disponible se producirá una excepción, la cual puede ser capturada para evitar la terminación aburpta del programa, y mostrar en su lugar un mensaje de error o de revisión de los datos introducidos por el usuario (por poner un ejemplo). Otra aplicación de la captura de errores está en la comprobación de líneas de código que podrían contener errores. Para usuarios nóveles puede ser de gran ayuda. 2. Las sentencias try y catchLa captura de errores se realiza incluyendo el código que puede potencialmente contener un error (o provocar una excepción) entre las llaves de la sentencia try, como en el siguiente ejemplo:
Como se observa en el ejemplo, la sentencia writte provocará una excepción, al estar escrita de forma incorrecta (la forma correcta es write). Cuando se ejecuta la pieza de código anterior, se crea un objeto Exception. Este objeto puede ser accedido mediante la sentencia catch. Desgraciadamente, una vez más, para implementar un código compatible con los 2 navegadores más extendidos (IE y Netscape) debemos complicar un poco la codificación. Para el IE, la descripción de la excepción está en la propiedad description del citado objeto Exception, mientras que para el Netscape 6 debemos usar la propiedad message. El siguiente ejemplo muestra cómo hacerlo:
El ejemplo simplemente mostrará el contenido del mensaje que nos describe la exceptión que se ha producido.
Tras pulsar el botón Ejemplo, observamos el siguiente alert box:
Se observa como la ejecución del script no se detiene. La excepción ha sido capturada, y mediante el alert() podemos leer cuál es la descripción que de ella da el navegador. En este caso "writte is not defined". Con este mensaje nos resultará fácil corregir el error sin necesidad de repasar el código.
3. ConclusiónCon la captura de errores podemos añadir bloques de código encaminados a gestionar las posibles condiciones de error que puedan surgir durante la ejecución de un script. En caso de que no tengamos claro si cierta codificación es correcta, podemos evaluar su ejecución y mostrar los mensajes de error que dicha codificicación nos produce. Sin duda, una herramienta de programación eficaz y ya al alcance de todos.
|
|