if / else编码风格后果

时间:2015-09-30 06:39:28

标签: if-statement

我是一名新手程序员并且在一天晚上的演讲中,我们正在研究我教授的“if,else”编码部分,我很好奇它的一个方面。我很好奇的是,如果我们的程序中有一堆嵌套if,else,那么结束一个if是不好的编码风格,否则使用“else,if”代码行而不是if“x”,否则“Y”?例如,

if "x"
else if "y"
else if "z"
end

相比
if "x"
else if "y"
else "z"
end

它仍然可以在没有错误的情况下运行程序,但除了编程风格不好之外,还会产生后果吗?

2 个答案:

答案 0 :(得分:0)

在幕后JS没有其他的,如果它正在做的就是在解析时生成另一个if语句。

e.g:

if(foo){

} else if (baz){

}

成为

if (foo){

} else {
   if (baz){

   }
}

因此,如果最终使用另一个其他而不是其他的原因,那么当你想要控制else语句时,并且不仅仅是传递给那个不适合你的第一个条件的其他东西。 ..(为了控制else条件并仅将其过滤到必要的项目)

如果你确实有很多else-if条件的长语句,你应该考虑使用switch语句。

答案 1 :(得分:0)

这一切都取决于你想要做什么。前一个示例确保满足所有IF要求。在这种情况下,会出现没有IF被击中的情况。

在后一个例子中,ELSE" Z"如果所有上述IF失败,肯定会受到打击。如果要在IF中分配变量,这将非常有用 - 您的变量肯定会在IF语句的末尾有一个值。如果它与第一个示例中一样,则变量将为null,如果您稍后尝试使用它,则可能会导致null错误。

如果有很多if-thens,我也会检查case / switch语句,因为它更实用。

另外,请记住好好评论你的代码 - 特别是解释所有嵌套的IF正在做什么。

相关问题