Comprimir y Ofuscar Código JavaScript
El problema se puede resolver de diversas formas, pero la que más me han llamado la atención es la forma de dhtmlgoodies, quienes ofrecen un conjunto de scripts muy completo llamado DHTML Suite for Applications.
En un principio, todos sus scripts se encontraban por separados sin relación entre ellos. Después se le ocurrió unir todos ellos en una Suite de un solo archivo que llegó a pesar la nada despreciable cantidad de 790 Kb. ¡Casi un mega!, En ese momento el peso ya es para tomarse muy en cuenta... yo diría que raya en un problema de obesidad.
Viendo tal situación, se les ocurrió volver a separarlos, pero en esta ocasión creando una base común, quien se encarga de llamarlos por separado; al vuelo según se use alguno de ellos. De esta forma se cargan únicamente los scripts que se van a ocupar, reduciendo así el envío de datos al navegador.
La idea es bastante interesante, pero aún así contamos con scripts que miden alrededor de 50 Kb, que sigue siendo un tamaño... digamos: rechoncho, así que ahí no va a acabar la cosa. ¿Y si cambiamos nombres de variables, eliminamos los comentarios, los espacios y saltos de linea que no son necesarios?, pues nos queda un código compacto y más fácil de transmitir. Además esto tiene otra ventaja (o desventaja, depende como se vea); el código queda ofuscado.
La idea de poder "comprimir" el código a costa de "ofuscarlo" no me desagrada en lo absoluto, por lo que después de una búsqueda puedo recomendar ampliamente Packer, creado y desarrollado por Dean Edwards que además lo podemos encontrar en deferentes sabores:
Algunos ejemplos para comprobar su eficacia:
| Script | Peso Original | Peso Comprimido |
|---|---|---|
| JS Calendar | 42,029 bytes | 16,318 bytes |
| Tab View | 11,448 bytes | 4,726 bytes |
| Dynamic List | 9,413 bytes | 3,809 bytes |
![]() |
¿Qué quiere decir "probocar"? |
![]() |
Yo creo que el amigo quería decir algo como: Es posibleSaludos |



Hola.
Conozco el gran trabajo de Dean Edwards, y creo que resulta enormemente interesante combinarlo con CopyRightParser (made in spain). Con esto no solo se empaqueta el código sino que además se protege la autoría del desarrollo, de forma que la distribución del código corresponda única y exclusivamente al autor, y no a terceras personas ajenas al desarrollo del mismo, y sin permiso expreso del propietario para su distribución. Es posible incluso probocar que el código solo pueda ser ejecutado en un dominio o subdominio concreto. Si todos pasáramos por esto no habría tanto listito repartiendo el código de otros como si fuera suyo.
Espero que sea de utilidad.
Saludos varios.