1

JSコードの難読化についてではなく(実際には主題ではありません)、JSを理解するために質問があります。

JSコードで難読化ツールを使用すると、生成されたコードには次のようなステートメントが含まれます。

(0xA6, 78.) <= 0x204 ? val : otherVal

ifElseステートメントとreduceバージョンを知っています。この例では、難読化ツールは他の16進基数で数値を使用します(これは問題ありません)

しかし、表記法:

( value , other value )

なぜこれと何のために何を作るのですか?

これを理解するためにあなたの助けをありがとう。

4

2 に答える 2

3

これはコンマ演算子です。

javascriptコンマ演算子

Mozillaコンマ演算子

于 2013-03-20T09:43:15.350 に答える
1

カンマ区切りのリストは、最も外側の右の値、この場合は数値のみを評価しています78。それはまたのように見えるかもしれません

(0xA6, 42, 11, 78.)

それでも評価され78ます(末尾の小数点はオプションです)。2番目の数値は、数値の8進数バージョンのみ516です。したがって、実際には、ラインは

78 < 516 ? val : otherVal

これは三項演算子で書かれた非常に単純な条件ですが、次のように書くこともできます。

if( 78 < 516 ) {
    // assign val somewhere
} else {
    // assign otherVal somewhere
}
于 2013-03-20T09:44:49.997 に答える