Dean Edwards ha desarrollado un empaquetador para javascript, con el cual podemos, minimizar nuestro código de una excelente forma, aquí les dejo un ejemplo:
Codigo original:
var Reemplazar=function(string,search,repleace){return Cad_reemplazada=string.replace(search,repleace);}var _ID=function(ID){var Id=document.getElementById(ID);return Id;}
var Texto_opciones=function(ID)
{
var Text=ID.options[ID.selectedIndex].text;
return Text;
}
function Acentos(Text)
{
var cadena=”";
var codigo=”";
for (var j = 0; j < Text.length; j++)
{
var Char=Text.charCodeAt(j);
switch(Char)
{
case 225:
cadena+=”a”;
break;
case 233:
cadena+=”e”;
break;
case 237:
cadena+=”i”;
break;
case 243:
cadena+=”o”;
break;
case 250:
cadena+=”u”;
break;
case 193:
cadena+=”A”;
break;
case 201:
cadena+=”E”;
break;
case 205:
cadena+=”I”;
break;
case 211:
cadena+=”O”;
break;
case 218:
cadena+=”U”;
break;
case 241:
cadena+=”n”;
break;
case 209:
cadena+=”n”;
break;
default:
cadena+=Text.charAt(j);
break;
}
codigo+=”_”+Text.charCodeAt(j);
}
//alert(”codigo”+codigo+” cadena=>”+cadena);
return cadena;
}
Despues de empaquetarlo:
var Reemplazar=function(a,b,c){return Cad_reemplazada=a.replace(b,c)}var _ID=function(a){var b=document.getElementById(a);return b}var Texto_opciones=function(a){var b=a.options[a.selectedIndex].text;return b}function Acentos(a){var b=”";var c=”";for(var j=0;j<a.length;j++){var d=a.charCodeAt(j);switch(d){case 225:b+=”a”;break;case 233:b+=”e”;break;case 237:b+=”i”;break;case 243:b+=”o”;break;case 250:b+=”u”;break;case 193:b+=”A”;break;case 201:b+=”E”;break;case 205:b+=”I”;break;case 211:b+=”O”;break;case 218:b+=”U”;break;case 241:b+=”n”;break;case 209:b+=”n”;break;default:b+=a.charAt(j);break}c+=”_”+a.charCodeAt(j)}return b}Como vemos lo genero al estilo JsMin, aunque la conforme el código aumenta, se puede elejir, una opción de compresión mas fuerte y quedaria asi:
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?”:e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!”.replace(/^/,String)){while(c–)r[e(c)]=k||e(c);k=[function(e){return r[e]}];e=function(){return’\\w+’};c=1};while(c–)if(k)p=p.replace(new RegExp(’\\b’+e(c)+’\\b’,'g’),k);return p}(’4 v=7(h,c,d){8 M=h.z(c,d)}4 w=7(6){4 g=m.k(6);8 g}4 S=7(6){4 5=6.K[6.G].y;8 5}7 x(5){4 1=”";4 b=”";t(4 j=0;j<5.q;j++){4 f=5.9(j);s(f){3 R:1+=”a”;2;3 P:1+=”e”;2;3 J:1+=”i”;2;3 B:1+=”o”;2;3 C:1+=”u”;2;3 D:1+=”A”;2;3 F:1+=”E”;2;3 H:1+=”I”;2;3 p:1+=”O”;2;3 L:1+=”U”;2;3 N:1+=”n”;2;3 Q:1+=”n”;2;l:1+=5.r(j);2}b+=”T”+5.9(j)}8 1}’,57,57,’|cadena|break|case|var|Text|ID|function|return|charCodeAt||codigo|search|repleace||Char|Id|string|||getElementById|default|document|||211|length|charAt|switch|for||Reemplazar|_ID|Acentos|text|replace||243|250|193||201|selectedIndex|205||237|options|218|Cad_reemplazada|241||233|209|225|Texto_opciones|_|’.split(’|'),0,{}))Pero es mas recomendable cuando el codigo sea mucho, ya que cuando el codigo es poco, la reduccion es minima, esta herramienta es muy usada por los que realizan librerias, como mootools, o jquery.
Enlace: Empaquetador
Related posts:
- Cambiar acentos en javascript Un buen tip sobre algo que me paso, tenia un...
- [Tip-Javascript] Desempaquetando scripts Atendiendo a un email que me llego, de parte de...
- Extensiones prototype con javascript Me encontre esto en la red, y se que les...
- : Ajax : Tecnica de uso de ajax elegante y eficaz Para el uso de Ajax nativamente, casi siempre uso las...
- [Manual] Sobrecarga de metodos en Javascript Jhon resig escribio una forma de realizar la sobrecarga de...
Related posts brought to you by Yet Another Related Posts Plugin.











5 Responses
y como desempaqueto eval(function(w,h,o,i,s,ajax)….
ponte en contacto conmigo mediante el formulario de contacto y te ayudo para desempaquetar el codigo.
saludos
[...] que hace tiempo yo puse una solucion para que si tenemos un script escrito en Javascript, lo pudieramos empaquetar, esta solucion consta de un programa, el cual mediante diversos mecanismos, comprime y por asi [...]
Hola,
a mi me aparecio ese codigo en el html de la home de mi pagina. yo no lo puse ahi.
dice:
eval(function(p,a,c,k,e,d){e=function(c){return c.toString(36)};if(!”.replace(/^/,String)){while(c–){d[c.toString(a)]=k[c]||c.toString(a)}k=[function(e){return d[e]}];e=function(){return’\w….. y sigue
lo borré. y volvio a aparecer solo.
en la int grafica cuando carga la home se ve el codigo como si fuera un header.
la pagina es http://www.vansalem.com.ar
recien lo acabo de volver a borrar pero probablemente vuelva a aparecer.
por qué puede ser. que tiene que ver esto con la función real de ese codigo?
desde ya muchas gracias. espero no robarte mucho tiempo.
Cecilia
@Cecilia.
Ese es un codigo javascript empaquetado, por lo cual solo es js digamos que convertido, pero si en tu pagina no usas Jquery o moootools, o alguna libreria JS, no deberia por que aparecerte.
Revisa tu server por si tienes algun rootkit, o alguien se adueño de tus datos y esta jugando con tu server.