Unidad 3: Funciones y Manejo de Errores
3.2 Manejo de Errores en JavaScript
JavaScript proporciona mecanismos para manejar errores y prevenir que un programa falle completamente cuando ocurre un problema inesperado.
El uso de try...catch nos permite capturar errores y tomar decisiones sobre cómo manejarlos sin interrumpir la ejecución del programa.
3.2.1 El Bloque try...catch
La estructura básica para manejar errores en JavaScript es:
| Sintaxis de try...catch | |
|---|---|
Cuando el código dentro de try genera un error, la ejecución se detiene y se pasa automáticamente al bloque catch, donde podemos manejar el error.
Ejemplo básico de try...catch
3.2.2 Uso del Bloque finally
El bloque finally se ejecuta siempre, independientemente de si hubo o no un error.
Ejemplo con finally
3.2.3 Lanzar Errores con throw
Podemos generar errores manualmente usando throw. Esto es útil cuando queremos validar datos y detener la ejecución si no son correctos.
Ejemplo con throw
| Lanzamiento de errores con throw | |
|---|---|
3.2.3 Tipos de Errores Comunes en JavaScript
JavaScript tiene varios tipos de errores que pueden ocurrir durante la ejecución de un programa. Algunos de los errores más comunes son:
SyntaxError: Ocurre cuando hay un error en la sintaxis del código.ReferenceError: Sucede cuando intentamos acceder a una variable que no está definida.TypeError: Aparece cuando intentamos ejecutar una operación sobre un tipo de dato incorrecto.RangeError: Se produce cuando un valor numérico está fuera del rango permitido.EvalError: Relacionado con el uso incorrecto deeval()(aunque es poco común en código moderno).
Ejemplo de errores comunes
3.2.4 Personalización de Mensajes de Error
Podemos personalizar los errores en JavaScript lanzando mensajes descriptivos mediante throw. Esto es útil cuando queremos manejar errores específicos en nuestro código.
Ejemplo de personalización de errores
| Lanzar errores personalizados | |
|---|---|
Los mensajes de error personalizados permiten que el código sea más claro y fácil de depurar.
Ejercicios: Manejo de Errores en JavaScript
Ejercicio 1: Validación de entrada numérica
- Crea una función
pedirNumeroque solicite un número al usuario. - Usa
try...catchpara asegurarte de que el usuario ingrese un número válido. - Si el usuario ingresa algo que no sea un número, lanza un error con
throwy captura el error.
Solución
Reto
- Modifica la función
pedirNumero, que tenga un valir mínimo y uno máximo, que de dos tipos de errores, uno si la entrada no es numérica y otro si el número no está en el rango permitido.
Ejercicio 2: División segura
- Crea una función
dividirque reciba dos números y los divida. - Usa
try...catchpara evitar divisiones entre cero. - Si el divisor es cero, lanza un error con
throw.
Solución
| División segura con manejo de errores | |
|---|---|
Ejercicio 3: Validación de edad para votar
- Crea una función
validarEdadVotacionque reciba una edad como parámetro. - Si la edad es menor que 18, lanza un error con
throwindicando que la persona no puede votar. - Usa
try...catchpara capturar el error y mostrar un mensaje adecuado.