Javascript 在if-else块中抛出错误的适当方法
我想知道,在if-else块中,哪一种(A或B)是编写throw语句的合适方法: 下面的方框用于说明目的,并假设已定义了内容 //A //BJavascript 在if-else块中抛出错误的适当方法,javascript,node.js,if-statement,Javascript,Node.js,If Statement,我想知道,在if-else块中,哪一种(A或B)是编写throw语句的合适方法: 下面的方框用于说明目的,并假设已定义了内容 //A //B B中唯一的区别是显式使用else语句。我的问题是,最好的写作方式是什么。(这是一个nodejs示例,但该理论也适用于其他语言)我建议使用块A,特别是如果您有嵌套的if/else块 A也被称为guard子句,如果您不想在某些情况下执行整个方法,它很有用。完全由您决定,它只是一种样式选择,我更喜欢第一种方法,因为它在顶部验证所有false行为,然后干净地编写主
B中唯一的区别是显式使用else语句。我的问题是,最好的写作方式是什么。(这是一个nodejs示例,但该理论也适用于其他语言)我建议使用块A,特别是如果您有嵌套的if/else块
A也被称为guard子句,如果您不想在某些情况下执行整个方法,它很有用。完全由您决定,它只是一种样式选择,我更喜欢第一种方法,因为它在顶部验证所有
false
行为,然后干净地编写主逻辑,else
语句中没有嵌套代码。但正如CertainPerformance所说,选择什么完全取决于你。谢谢@CertainPerformance和Shaharya。感谢您的评论。这个问题的全部目的是检查一般的模式和接受度,如果其他的话,请写出来。。在任何编程语言中抛出代码。谢谢大家。谢谢@Alexander。感谢您的评论一旦您能够标记,请标记基于意见的问题,以便结束。如果您没有标记的能力,请避免发布此类问题的答案
if(ruleId !=100)
throw new RuleError(RULES_EXCEEDED);
const getRuleList = getRules(rule);
// Some more code down the line.....
if(ruleId !=100)
throw new RuleError(RULES_EXCEEDED);
else {
const getRuleList = getRules(rule);
// Some more code down the line.....
}