2016-11-05 15 views
-1

私はサイトにいたので、ソースコードを覗いていて、すべてのJavaScriptコードは(いつものように)難読化されていました。私は、コードが正常になり、難読化かわからないが、私はその本のように考える:難読化されたコードは何を意味しますか?

var1 > 10/2, var1 = 0 

if(var1 > 10/2){ 
    var1 = 0; 
} 
と同じであるが、それがどのようにこのですか?そうでない場合は教えてください。

+1

ありません、同じではありません。 https://www.google.com/search?q=what+is+obfuscated+code –

+1

いいえこれはコンマ演算子を使用しているため、これらの両方が評価されますが、2番目のものだけが返されます。これは、あなたが表示していないより大きなものの一部でなければなりません。なぜなら、今は 'var1> 10/2に解決されるので無意味です。 var1 = 0 'となる。 – vlaz

答えて

2

console.log内のかっこの中にコードを配置すると、何が起こるのかが分かります。 console.logはパラメータの区切り文字としてコンマを読み込むので、余分な括弧が必要です。

Comma Operator

コンマオペレータは(左から右へ)、そのオペランドの各々を評価し、最後のオペランドの値を返します。

var var1; 
 
console.log(var1);      // undefined 
 
console.log((var1 > 10/2, var1 = 0)); // 0 
 
console.log(var1);      // 0

+1

ありがとう、私はそれが今よりよく理解する – MasterPtato

関連する問題