我的一个朋友刚刚问我以下两种表达方式中哪一种是更好的选择。虽然我理解这个问题,因此更好的定义可能是一个意见问题,因此是题外话;我很想知道是否有充分的理由支持一个。
var count = _.reduce(randomData, function(prefix, businessData){
return prefix + businessData.length;
}, 0);
return {
name: randomName,
pos: position[randomName],
count: count
};
或者
return {
name: randomName,
pos: position[randomName],
count:
_.reduce(randomData, function(prefix, businessData){
return prefix + businessData.length;
}, 0)
};
另一位同事和我都同意第一个会更好,因为它更清晰,可能更容易调试和更容易理解,但除此之外,我们无法证明我们的选择是合理的。
是否有理由支持返回值而不是返回表达式?