try...catch block is for handling exceptions, remember exception means the thrown error not the error.
try {
var a = 1;
b++; //this will cause an error because be is undefined
console.log(b); //this line will not be executed
} catch (error) {
console.log(error); //here we handle the error caused in the try block
}
In the try
block b++
cause an error and that error passed to catch
block which can be handled there or even can be thrown the same error in catch block or make little bit modification then throw. Let's see next example.
try {
var a = 1;
b++;
console.log(b);
} catch (error) {
error.message = "b variable is undefined, so the undefined can't be incremented"
throw error;
}
In the above example we modified the message
property of error
object and then throw the modified error
.
You can through any error in your try block and handle it in the catch block:
try {
var a = 1;
throw new Error("Some error message");
console.log(a); //this line will not be executed;
} catch (error) {
console.log(error); //will be the above thrown error
}