0

少しばかげているように聞こえるかもしれませんが、次の if ステートメントをより少ない単語で書く短い方法はありますか?

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

関数の一部としてそのステートメントがあるため:

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

そして、どうにかしてその2行のコードを返すことができるかどうか疑問に思っていました:

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 に答える