In asynchronous functions, we can simply catch the error in callback. For example :
Async func:
fs.readdir(path, function(err){
//catch error
)
As synchronous functions don't have callback, how can I catch errors?
Sync func:
fs.readdirSync(path); //throws some error
One way is to use try catch block:
try{
fs.readdirSync(path);
}
catch(err){
//do whatever with error
}
Is there any other way to do that? If yes, then which one is better?
In asynchronous functions, we can simply catch the error in callback. For example :
Async func:
fs.readdir(path, function(err){
//catch error
)
As synchronous functions don't have callback, how can I catch errors?
Sync func:
fs.readdirSync(path); //throws some error
One way is to use try catch block:
try{
fs.readdirSync(path);
}
catch(err){
//do whatever with error
}
Is there any other way to do that? If yes, then which one is better?
Share Improve this question asked May 21, 2015 at 7:36 manishmanish 9562 gold badges12 silver badges35 bronze badges 2-
3
try...catch
is the synchronous way. – elclanrs Commented May 21, 2015 at 7:38 - 1 for synchronous try ... catch is the way to handle exception – Manmay Commented May 21, 2015 at 7:43
1 Answer
Reset to default 7Is there any other way to do that?
No, that's how you do it. Typically you have all your main logic in the try
, and then just handle exceptional conditions (errors) in the catch
. (And cleanup in the finally
.)