0

非常简单的问题,我只是想知道是否有办法用更少的字符编写 if/else 语句,例如,我可以使用以下任一方法创建一个 if 语句:

if (season == "autumn") {
  tree.gotoAndStop ("brown leaves");
}

或者:

if (season == "autumn") tree.gotoAndStop ("brown leaves");

这使用更少的空间,使我的代码看起来更漂亮。使用 if/else 语句,我的选择似乎是:

if (season == "autumn" || season == "winter") {
  tree.gotoAndStop ("brown leaves");
} else {
  tree.gotoAndStop ("green leaves");
}

或者:

gotoAndStop((season == "autumn" || season == "winter")
            ? "brown leaves" : "green leaves");

尽管第二种方法并不总是理想的。你知道任何替代方案吗?

4

1 回答 1

3

就以简洁的方式编写代码而言,您可以使用以下所有技术来手动缩小代码,但这是一个糟糕的设计决策,将来可能会导致头痛和/或身体伤害。别说我没警告过你。

如果别的:
if (foo) {
    bar();
} else {
    baz();
}
变成:
foo?bar():baz()
如果:
if (foo) {
    bar();
}
变成:
foo&&bar();
如果不:
if (!foo) {
    bar();
}
变成:
foo||bar();
如果有多个语句:
if (foo) {
    bar();
    baz();
    fizz();
    buzz();
}
变成:
foo&&(bar(),baz(),fizz(),buzz());
于 2013-04-22T18:19:12.883 回答