2010-03-17 30 views
11

Wiesz, jak wyglądają te zapakowane pliki js, prawda?Jak rozpakować zawartość pliku JavaScript?

 eval(function(p,a,c,k,e,d){ ... } ('obfuscated-string'.split('|'),0,{}))

To po prostu tak się składa, że ​​mam do dostrojenia niektórych dużych starszych kod, który wygląda tak, że i chcę znaleźć sposób, aby włączyć to w bardziej czytelnej wersji.

Jeśli to nie jest możliwe, czy mogę przynajmniej pozbyć się eval?

Odpowiedz

11

Można z dekompresorów online: spróbować jednego z nich, znaleźć taki, który najbardziej Ci odpowiada:

+0

Doskonale, te działają świetnie! –

13

JS Beautifier będzie zarówno formatowanie i rozpakować:

http://jsbeautifier.org/

+0

Użyłem tego do rozpakowania jednego złożonego javascriptu. Jest czysto rozpakowany. – srv

+0

To jest fajne. Użyłem go do ponownego sformatowania kodu javascript. – Vasyl

0
eval(function(W,H,A,K){function z(i){return(i< 62?'':z(this['parseInt'](i/62)))+((i=i%62)>35?String.fromCharCode(i+29):i.toString(36))}for(var i=0;i<W.length;i++)A[z(i)]=W[i];function d(w){return A[w]?A[w]:w;};return H.replace(/\b\w+\b/g,d);}('alert|Testing|packed'.split('|'),'0("1 0 2");',{})); 

Co mogę zrobić, to zmienić eval do document.getElementById ('test') = wartość, a następnie upewnij się, że mam tekstowym. (bez parsowania DOM multilinie) wuth ID

test.value=(function(W,H,A,K){function z(i){return(i< 62?'':z(this['parseInt'](i/62)))+((i=i%62)>35?String.fromCharCode(i+29):i.toString(36))}for(var i=0;i<W.length;i++)A[z(i)]=W[i];function d(w){return A[w]?A[w]:w;};return H.replace(/\b\w+\b/g,d);}('alert|Testing|packed'.split('|'),'0("1 0 2");',{}));
<textarea id=test rows=9 cals=77></textarea>

= "test"

+0

http://www.scriptcompress.com/unpack.htm to narzędzie internetowe, które przygotowałem do rozpakowania, również http://www.scriptcompress.com/decoder.htm będzie próbował go rozszyfrować w DOM, poprzez parser JSOn i więcej –

+0

Wow, ta sprawa z fragmentem kodu była dla mnie nowa. –