- 已关闭**。此问题为opinion-based。当前不接受答案。
- 想要改进此问题吗?**请更新此问题,以便editing this post可以用事实和引文来回答。
1小时前关闭。
Improve this question
我想知道,当我们有条件句时,有甚么是最好的做法,是与不同的变数有关的。
例如,在Javascript中,考虑以下这些变量
var p1 = 'string1'
var p2 = 'string2'
下面这些功能
x一个一个一个一个x一个一个二个x
我知道xpto1
和xpto2
产生相同的结果,并且我在编码时已经使用了这两个逻辑,但是我希望知道:这两种代码中哪一种最好有一个普遍的规则?当我们有不同的变量时,创建一个"else"语句并在其中包含条件(如xpto2
)是否合适?
5条答案
按热度按时间euoag5mw1#
为了说明我在注解中已经说过的内容,当前面的
if
块总是从函数返回时,我将完全避免else
:显然,在这种情况下,前两个 predicate 可以组合而不会变得麻烦:
其将如前所述返回
true
或false
,因为===
比较产生布尔值。myss37ts2#
在您的示例中,javascript(和大多数语言)中的
{}
对基本相同 如果您语句depends只有一行可以删除,则称为block
(function
、const
、let
除外):精确的
格式化后返回代码1
只有在
else
中有2条语句时才有区别1u4esq0p3#
一段好的代码也很容易阅读,所以你可以通过删除最后一条else语句来简化代码:
(the同样适用于xpto2)
在任何情况下,问问自己“我的代码是可理解和可读的吗?"答案是,使用的嵌套越少越好。
v1l68za44#
正如你所说,你正在接近的方式并没有错,你选择哪种条件往往取决于逻辑,例如如果你有一个简单的条件,如果为真返回一个值,如果为假返回另一个值,你可以使用三元运算符,也许不是你的例子的最佳选择,
因为这可能会使代码更难阅读。对于if/else,你可以将你的例子修改成这样:
这样你就可以少用一些嵌套的if/else语句,另一种方法是switch语句:
jpfvwuh45#
就像其他答案说的那样,可读性是你最好的选择,而不是:
您始终可以执行以下操作:
最好的“如果”是可以避免的。
在说了这句话之后,你可以避免else,当一个返回被“触发”时,这样:
结果是一样的。