Guía de uso
Con esta herramienta puedes minificar JavaScript eliminando comentarios, sangrías y espacios innecesarios. Lee el código pieza a pieza, así que las cadenas, las plantillas literales y las expresiones regulares no se alteran, y conserva los saltos de línea de los que depende la inserción automática de punto y coma. Tampoco acorta nombres de variables: el resultado sigue siendo reconocible al depurar. Todo ocurre en tu navegador.
Cómo minificar JavaScript en cuatro pasos
- Pega el código en el campo de entrada: una función suelta o un archivo entero.
- Minifícalo con el botón de ejecutar o con Ctrl + Enter.
- Mira bajo la salida cuántos caracteres y bytes ocupa ahora.
- Copia el resultado a tu página o archivo y ejecútalo una vez para confirmar que todo sigue igual.
Qué hace y qué no hace
| Operación | ¿La aplica? |
|---|---|
Eliminar comentarios // y /* */ | Sí, salvo los que empiezan por /*! (licencias) y la línea #! inicial |
| Quitar sangrías y espacios sobrantes | Sí, dejando un espacio donde unir dos piezas cambiaría el sentido, como en a+ +b |
| Unir líneas | Solo cuando es seguro para la inserción automática de punto y coma |
| Acortar nombres de variables y funciones | No |
| Eliminar código muerto o precalcular constantes | No |
| Transformar sintaxis moderna para navegadores antiguos | No |
| Generar mapas de código fuente | No |
Un ejemplo con el carrito de compra
Una función totalCarrito(productos, iva) de ocho líneas, con un comentario de cabecera, otro al final de una línea y sangría normal, ocupa 210 caracteres. Minificada queda en dos líneas: function totalCarrito(productos,iva){let total=0;for(const p of productos){total+=p.precio*p.cantidad;} y después return total*(1+iva);}, 126 caracteres en total.
¿Por qué no queda todo en una línea? Porque el salto anterior a return se conserva como margen de seguridad. Aquí unirlo no causaría problemas, pero la herramienta solo une líneas cuando puede demostrar que el significado no cambia. Cuesta un byte y evita sorpresas.
Código sin punto y coma: los casos delicados
let a = 1y, en la línea siguiente,let b = 2siguen en líneas separadas; unidas darían un error de sintaxis.returnseguido de42en otra línea no se une: unido, la función devolvería 42 en lugar deundefined.- El salto anterior a un
++o--al principio de línea se mantiene. - Los espacios dentro de
'Hola mundo'o de/a b/gson datos y no se tocan.
Un caso que suele confundir: si una línea termina en const c = a y la siguiente empieza por (b), el resultado es const c=a(b). No es culpa del minificador: JavaScript ya interpretaba el original como una llamada a función. Si una línea tiene que empezar por paréntesis o corchete, pon un punto y coma delante.
¿Esta herramienta o un empaquetador?
Para una aplicación completa, un empaquetador que renombre variables y elimine código sin usar ahorrará más. Esta página está pensada para trabajos rápidos sin instalar nada: el campo de script personalizado de un CMS, un pequeño widget para una página de aterrizaje, un fragmento que vas a enviar a un cliente o un marcador con código (bookmarklet). En este último caso escribe todos los punto y coma: los navegadores eliminan los saltos de línea de las direcciones y cualquier salto que la herramienta conserve se perdería. Si quieres el contexto completo, lee qué es minificar código.
Privacidad y herramientas relacionadas
La minificación se hace con JavaScript en tu pestaña; el código no se envía al servidor y la página solo suma un contador de uso anónimo. La herramienta no valida la sintaxis: si entra código con errores, sale código con errores. Para leer un script minificado usa formatear JavaScript, y para páginas con scripts incrustados, minificar HTML aplica las mismas reglas a cada bloque. Más utilidades en herramientas para desarrolladores.