0

听起来可能有点愚蠢,但是有没有一种更短的方法可以用更少的词来编写以下 if 语句:

if(auxiliars.environment == "Development") {
    less.env = "development";
    less.watch();
}

因为我将该语句作为函数的一部分:

set_environment: function(environment) {
    if(auxiliars.environment == "Development") {
        less.env = "development";
        less.watch();
    }
}

我想知道我是否可以以某种方式返回那两行代码:

less.env = "development";
less.watch();

我问的主要原因是因为在 PHP 中我正在做类似以下的事情:

return (!empty($len)) ? hash('sha512', str_pad($stream, (strlen($stream) + $len), substr(hash('sha512', $stream), $this->round(strlen($stream) / 3, 0), ($len - strlen($stream))), STR_PAD_BOTH)) : hash('sha512', substr($stream, $this->round(strlen($stream) / 3, 0), 16));

我想知道我是否可以在 JavaScript 中做类似的事情。

4

3 回答 3

3

不是真的,你为什么要?您的 if 语句干净且易于理解。

但是,您可以尝试三元运算符

auxiliars.environment == "Development"
   ? ( less.env = "development", less.watch() )
   : void 0;

但是使用逗号运算符并不能使您的代码更好。

于 2012-05-14T12:05:49.123 回答
0

Javascript 有 ? : 声明,如果这就是你要问的。

所以

var x = 5;
var y = (x < 10) ? "bar" : "foo";

将字符串“bar”分配给 y。

于 2012-05-14T12:01:13.243 回答
0

是的,您可以使用三元运算符

于 2012-05-14T12:03:40.830 回答