try...catch...finally
We can add one more construct to try...catch
called finally
, this code executes in all cases. i.e. after try
when there is no error and after a catch
in case of error. The syntax for try ...catch...finally
is shown below.
try {
// try to execute the code
} catch (err) {
// handle errors
} finally {
// execute always
}
Running real-world example code.
try {
alert( 'try' );
} catch (err) {
alert( 'catch' );
} finally {
alert( 'finally' );
}
In the above example, the try
block is executed first which is then followed by finally
as there are no errors.
Exercise
Correct!
function divideNumbers(numerator, denominator) {
try {
// try statement to divide numerator by denominator.
} catch (error) {
// print error message
} finally {
// print execution has finished
}
// return result
}
let answer = divideNumbers(10, 2);
function divideNumbers(numerator, denominator) { let result; try { result = numerator / denominator; } catch (error) { console.error(`Error: ${error}`); } finally { console.log('Function finished executing'); } return result; } let answer = divideNumbers(10, 2);
assert(answer == 5);