Manejo de Errores en JavaScript

¿Qué es el Manejo de Errores?

El manejo de errores en JavaScript es un mecanismo que permite gestionar situaciones en las que el código no se ejecuta como se espera, evitando que la aplicación se detenga inesperadamente. Esto es crucial para crear aplicaciones robustas y confiables.

Try, Catch y Finally

El bloque try...catch permite manejar errores que pueden ocurrir durante la ejecución de un bloque de código. También se puede utilizar un bloque finally para ejecutar código que debe ejecutarse independientemente de si ocurre un error o no.

Ejemplo de: Try, Catch y Finally

A continuación, se muestra como, se captura un error de división por cero y se muestra un mensaje de error. El bloque finally se ejecuta sin importar el resultado.

javascript
try {
  // Código que puede causar un error
  const resultado = 10 / 0;
  console.log(resultado);  // Esto no se ejecutará
} catch (error) {
  // Manejo del error
  console.error('Ocurrió un error:', error.message);
} finally {
  // Código que se ejecuta siempre
  console.log('Bloque finally ejecutado.');
}

Crear Errores Personalizados

Puedes crear y lanzar errores personalizados usando la declaración throw. Esto es útil para manejar condiciones de error específicas en tu aplicación. La función validarEdad lanza un error si la edad es menor de 18. El bloque try...catch captura y maneja este error.

javascript
function validarEdad(edad) {
      if (edad < 18) {
          throw new Error('La edad debe ser al menos 18 años.');
      }
      return 'Edad válida';
  }

  try {
      console.log(validarEdad(16));
  } catch (error) {
      console.error('Error:', error.message);  // La edad debe ser al menos 18 años.
  }
  Resumen

  • Try...catch: Permite manejar errores en bloques de código, asegurando que la aplicación no se detenga.
  • Finally: Se utiliza para ejecutar código que debe correr sin importar si ocurrió un error.
  • Throw: Permite crear y lanzar errores personalizados, mejorando la gestión de condiciones de error en la aplicación.