Answer the question
In order to leave comments, you need to log in
What is the best way to handle errors in a class method?
Hello. I have a class with two methods. At the moment, I handle errors like this:
class Geo {
async method() {
try {
return await _method()
} catch (err) {
throw err
}
}
async _method() {
try {
return await someFunc()
} catch (err) {
throw err
}
}
}
app.post('/test', async (req, res) => {
try {
const geo = new Geo()
geo.method()
} catch (err) {
console.log(err)
}
})
Answer the question
In order to leave comments, you need to log in
1. Design:
try {
// что угодно
} catch (err) {
throw err;
}
async method() {
return await _method();
}
method() {
return _method();
}
const foo = () => {
try {
bar();
} catch (e) {
// этот блок не будет вызван никогда, так как ошибка перехватывается в вызове bar()
}
};
const bar = () => {
try {
dangerousCall();
} catch (e) {
// этот блок будет вызван в случае ошибки вызова dangerousCall()
}
}
try {
foo();
} catch (e) {
// этот блок не будет вызван никогда, так как ошибка перехватывается в вызове bar()
}
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question