Este tutorial explica cómo usar las declaraciones try/catch/finally en Javascript para manejar errores, con algunos ejemplos útiles.
A veces se espera un error, y en lugar de querer que la aplicación detenga la ejecución del error; quieres hacer otra cosa.
Otras veces, un error es inesperado o perjudicial para el funcionamiento de una aplicación y desea asegurarse de informarlo.
intentar/atrapar declaraciones en JavaScript te permiten hacer esto.
intentar/atrapar intentará ejecutar un bloque de código y tomará una acción específica si se cumple un error, en lugar de la acción predeterminada (que generalmente detiene la ejecución del código).
Sintaxis de probar/atrapar/finalmente
try { // Code to be executed } catch [(exception_var)] { // Code to execute if an exception (error) is reached } finally { // Code to execute regardless of whether an exception was reached }
Tenga en cuenta que:
- O atrapar, o finalmente bloques debe ser suministrado
- excepción_var debe ser el nombre de la variable que desea usar para acceder a la excepción lanzada
Ejemplos
try { thisFunctionDoesNotExist(); } catch (err) { console.error(err); // Print the error to the console. // An error of type ReferenceError: will be sent to the console as the code above tried to execute a non-existent function // Code execution will resume after the try/catch block rather than halting } finally { console.log('Finished!'); // 'Finished!' will be sent to the console regardless of whether there was an error or not }
Capturar un tipo específico de excepción
Puede manejar diferentes tipos de error de manera diferente comprobando su tipo con instanceof :
try { thisFunctionDoesNotExist(); } catch (err) { if (err instanceof ReferenceError) { console.error(err); // Print the error to the console. } else { console.log('An unexpected error occurred!'); throw err; } }
Tenga en cuenta que el error solo se enviará a la consola si se trata de un ReferenceError. De lo contrario, se vuelve a generar para que se trate con el comportamiento de excepción no controlado predeterminado:detener la ejecución
Recursos adicionales
Documentación técnica de Mozilla sobre try/catch
¿No usas JavaScript? Aquí se explica cómo usar try/catch en PHP!