使用:
节点.js
问题:
今天在重构我的代码时,我看到了这些行。关于它们的有趣之处在于,try catch 中的每个替代行都可能导致异常,因此代码可能会崩溃。对于我遵循的做法,应该专门处理每个单独的异常,并且最少(有用的)代码行应该在 try catch 中。作为程序员,我应该遵循哪种方法(A、B、其他)?为什么?我个人会选择 A,因为它减少了代码的行数。
代码 A:
function(err, someData, res){
if(err){
console.error(err);
} else{
try{
data = JSON.parse(someData); //exception expected
if(someVariable == "abc"){
var items = data['a']; //exception expected
} else if(site == "xyz"){
var items = data['b']; //exception expected
}
} catch(err){
console.error(err);
}
}
代码 B:
function(err, someData, res){
if(err){
console.error(err);
} else{
try{
data = JSON.parse(someData); //exception expected
} catch(err){
console.error(err);
}
if(someVariable == "abc"){
try{
var items = data['a']; //exception expected
} catch(err){
console.error(err);
}
} else if(site == "xyz"){
try{
var items = data['b']; //exception expected
} catch(err){
console.error(err);
}
}
}