2013-03-20 50 views
1

我有一個問題,而不是關於JS代碼混淆(它不是真正的主題),但理解一個JS如果其他符號。先進如果JavaScript語句在代碼保護中使用

當我們使用模糊工具上的JS代碼,生成的代碼包含了這樣的語句:

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

我知道的if else語句和減少的版本。 在本例和其他十六進制基地模糊處理工具使用號碼(OK此)

但符號:

(value , other value) 

爲什麼這和做什麼呢?

感謝您的幫助,以瞭解這一點。

回答

1

好,用逗號分隔的列表只評估最外層的正確的價值,在這種情況下,數字78。它也可以像

(0xA6, 42, 11, 78.) 

,它仍然將評估爲78(末尾IST只是可選的小數點)。第二個數字只是編號爲516的八進制版本。因此,在現實線路

78 < 516 ? val : otherVal 

這是一個三元運算符寫了一個非常簡單的條件下,它也可以這樣寫

if(78 < 516) { 
    // assign val somewhere 
} else { 
    // assign otherVal somewhere 
}