【发布时间】:2014-07-17 20:32:39
【问题描述】:
我经常看到 node.js 程序员,在调用需要回调的函数时,这样做:
callSomeThing(arg1, arg2, function (err, data) {
if(err) {
// Handle the error case
} else {
// Proceed normally
}
});
他们使用 else 块而不是在错误情况下返回是否有任何技术原因,或者这只是代码风格的事情?
callSomeThing(arg1, arg2, function (err, data) {
if(err) {
// Handle the error case
return;
}
// proceed normally
});
【问题讨论】:
-
这与回调甚至节点有什么关系?这只是关于编码风格的一个共同点,不是吗?一些编码员更喜欢对称(第一种情况),另一些更轻(第二种情况)。
-
我有一位同事告诉我,由于与异步有关的事情,节点会特别关心。我倾向于同意你的观点;这只是一种代码风格的东西——但我被明确告知不是这样。
-
我更喜欢使用第二种样式验证函数顶部的输入参数。它有助于避免大量 if - else 语句,而且我总是知道,毕竟 if,我有有效的数据。
标签: node.js callback flow-control