AD

¿Ya dominas lo básico? Un curso estructurado de JavaScript es la vía rápida para dar el salto.

Ver cursos de JavaScript en Udemy

Enlace de afiliado. No te cuesta nada extra.

🟨Lecciones de JavaScript
Lección 11 / 69

Gestión de errores (try...catch)

En esta lección verás la gestión de errores con try...catch en JavaScript, para que tu programa siga funcionando aunque ocurran problemas inesperados. Está dirigida a quien busca «uso de try catch en JavaScript» o «manejo de errores en JavaScript».

Mientras un programa se ejecuta pueden surgir problemas (pueden producirse errores). Aunque ocurra un error dentro de un bloque try, puedes capturarlo con un bloque catch (error) { ... } y evitar que se detenga todo el programa. Es un mecanismo parecido a un seguro: «decide de antemano qué hacer por si algo falla». También puedes provocar un error a propósito con throw new Error(mensaje).

El código de ejemplo lanza un error con throw dentro de la función dividir si intentas dividir entre cero. Llamar a dividir(10, 0) dentro del bloque try lanza el error, y el bloque catch lo captura y muestra error.message. Otro detalle importante: el resto del bloque try se omite en el momento en que se produce el error.

Un tropiezo habitual al empezar es que los errores producidos fuera del bloque try no los puede capturar catch. El código que pueda fallar tiene que estar bien encerrado en try. Además, capturar un error con catch y no hacer nada con él (tragárselo en silencio) es algo que conviene evitar, porque después resulta imposible averiguar la causa de un problema.

En el desarrollo real siempre acaban surgiendo imprevistos: errores al escribir del usuario, fallos de red, respuestas de error de una API externa. Una buena gestión de errores es imprescindible para mostrar al usuario un mensaje adecuado en lugar de una pantalla rota, y para construir una aplicación que funcione con fiabilidad.

Dentro de un bloque catch puedes consultar no solo el .message del objeto de error, sino también su .name (el tipo de error), lo que te permite reaccionar de forma distinta según el caso. Tener claro de antemano qué tipos de error esperas te permite escribir un tratamiento más cuidadoso.

Para lanzar un error a propósito escribes algo como throw new Error("mensaje"). Además de Error existen clases para tipos concretos, como TypeError y RangeError, que permiten una clasificación más detallada.

JavaScript
SALIDA

💡 Todo lo que pases a console.log() aparece en la salida de abajo.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)