JavaScript 的程式於頁面可以一覽無遺, 通常都是把 JavaScript code 抓下來, 最多加上 Formatter 就可以開始看(註: 某些 Compiler 會將變數名字取成短名字, 但是, 只要把那些變數名字猜出來, 還是不會太難)
Java 也有遇到同樣的問題 (將 Java 的 *.class decompile, 出來的 code 有些比原來排得還漂亮. XD), 於是就有 Java 的 Obfuscator(混淆器) 出現, 讓程式被 Decompile 後, 看起來是混亂成一團, 很難理解.
那 JavaScript 是否也有 混淆器 可以用呢?
JavaScript 混淆器(混亂器、加密) - jjencode
JavaScript 的 Hello World
alert("Hello, JavaScript")
JavaScript 經過 jjencode 的 Hello World
$=~[];$={___:++$,$$$$:(![]+"")[$],__$:++$,$_$_:(![]+"")[$],_$_:++$,$_$$:({}+"")[$],$$_$:($[$]+"")[$],_$$:++$,$$$_:(!""+"")[$],$__:++$,$_$:++$,$$__:({}+"")[$],$$_:++$,$$$:++$,$___:++$,$__$:++$};$.$_=($.$_=$+"")[$.$_$]+($._$=$.$_[$.__$])+($.$$=($.$+"")[$.__$])+((!$)+"")[$._$$]+($.__=$.$_[$.$$_])+($.$=(!""+"")[$.__$])+($._=(!""+"")[$._$_])+$.$_[$.$_$]+$.__+$._$+$.$;$.$$=$.$+(!""+"")[$._$$]+$.__+$._+$.$+$.$$;$.$=($.___)[$.$_][$.$_];$.$($.$($.$$+"\""+$.$_$_+(![]+"")[$._$_]+$.$$$_+"\\"+$.__$+$.$$_+$._$_+$.__+"(\\\"\\"+$.__$+$.__$+$.___+$.$$$_+(![]+"")[$._$_]+(![]+"")[$._$_]+$._$+", \\"+$.__$+$.__$+$._$_+$.$_$_+"\\"+$.__$+$.$$_+$.$$_+$.$_$_+"\\"+$.__$+$._$_+$._$$+$.$$__+"\\"+$.__$+$.$$_+$._$_+"\\"+$.__$+$.$_$+$.__$+"\\"+$.__$+$.$$_+$.___+$.__+"\\\" )"+"\"")())();
雖然混亂了, 但是容量也成長了N倍, 不過, 這混亂完的 code, 確實是完全都看不懂阿. XD