Welcome back! After exploring the try
and catch
blocks in JavaScript, we're now moving on to the finally
block, a companion of the try
and catch
blocks, performing the necessary cleanup. Today, we'll explore its application.
The finally
block is a section of code that always executes after the try
and catch
blocks, running irrespective of whether an exception occurred. This block executes no matter if the exception has happened or not. Curious? Let's take a look:
JavaScript1try { 2 // run some code 3} catch (error) { 4 // handle the error 5} finally { 6 // always run this code 7}
This is the basic structure of the try/catch/finally
block. See - no matter what's inside try
and catch
, the content of the finally
block will be executed after them, allowing you to proceed with some cleanup or post-actions!
Let's look into finally
applications in more detail.
The finally
block handles activities that are either risky or not after the try
and catch
blocks have been executed. Whether your try
block throws an exception or not, it doesn't matter — the finally
block ensures necessary tasks are completed. For example, when interacting with a database, you must close the connection. This is done with finally
:
JavaScript1let dbConnection; 2 3try { 4 dbConnection = openDatabase(); // try to open a connection 5 // try some operations 6} catch (error) { 7 console.error("An error occurred!", error); // catch and handle exceptions 8} finally { 9 dbConnection.close(); // always close the connection 10}
While this example might not be something you face right away, it's important to understand the appliance of the finally
block in real life.
Let's dive into action. In this example, the finally
block executes and logs "Finally!" to the console, regardless of the exception:
JavaScript1try { 2 console.log("In the try block"); 3 throw new Error("Oops, an error!"); // This causes an exception 4} catch (error) { 5 console.log("In the catch block"); 6} finally { 7 console.log("Finally!"); // This gets printed always 8} 9// Prints: 10// In the catch block 11// Finally!
Even in the absence of exceptions, the finally
block still runs:
JavaScript1try { 2 console.log("In the try block"); 3} catch (error) { 4 console.log("In the catch block"); 5} finally { 6 console.log("Finally!"); // This still gets printed 7} 8// Prints: 9// In the try block 10// Finally!
Great work! We've mastered the finally
block, the dependable cleanup tool for your JavaScript code that executes after try
and catch
blocks, regardless of exceptions. Excellent job!
Are you ready for practice to reinforce your knowledge? Up next, get hands-on to solidify these concepts. Let's dive deeper into the JavaScript cosmos!