Existe um bom minificador de JavaScript? [fechadas]


132

Qual minimizador de JavaScript você recomenda?



Embora a questão seja antiga e encerrada, a partir de 2019 - terser ( github.com/terser-js/terser ) é um minificador de fadas. Há também um plug-in para Rollup, que é ótimo para compactar pacotes rapidamente.
Levi Roberts

Respostas:


111

UglifyJS2 , usado pelo projeto jQuery.


17
Você pode usar o UglifyJS on-line sem a necessidade de instalá-lo - jscompress.com . +1 para o produto usado pelo jQuery
TMS

1
é usado mais do que fechamento?
FutuToad

@FutuToad: a versão atual é UglifyJS2 . Eu estava procurando uma comparação dos minifiers e encontrei as estatísticas aqui: lisperator.net/uglifyjs - parece que o Google Closure é mais lento que o UglifyJS. No entanto, o Closure pode reduzir os projetos do AngularJS. Portanto, não há um vencedor claro. Meu palpite é (após uma hora de pesquisa) que o UglifyJS2 é usado mais que o GC.
Martin Vseticka 29/11

PS: Você pode experimentar o Minify JS baseado no UglifyJS2 e seus códigos-fonte não serão enviados para um servidor remoto. ;)
Martin Vseticka

O UglifyJS suporta es6? todas as ferramentas que encontrei erros do throw desde que eu uso muita funcionalidade do es6 em meus arquivos.
precisa saber é o seguinte

31

Ativo

Descontinuada


O Google Closure Compiler geralmente obtém arquivos menores que o YUI Compressor, principalmente se você usa o modo avançado, que parece preocupante para mim, mas funcionou bem no projeto em que o usei:

Vários grandes projetos usam o UglifyJS, e fiquei muito impressionado com isso desde a mudança.


2
Modo simples Google CC também atinge tamanho menor do que YUI, e é seguro também
gblazex

10

Se você estiver usando PHP, também poderá dar uma olhada no minify, que pode minificar e combinar arquivos JavaScript. A integração é bastante fácil e pode ser feita por grupos definidos de arquivos ou uma string de consulta fácil. Arquivos minificados também são armazenados em cache para reduzir a carga do servidor e você pode adicionar cabeçalhos expirados através do minify.


10

O JavaScript Minifier fornece uma boa API que você pode usar programaticamente:

curl -X POST -s --data-urlencode 'input=$(function() { alert("Hello, World!"); });' http://javascript-minifier.com/raw

Ou fazendo upload de um arquivo e redirecionando para um novo arquivo:

curl -X POST -s --data-urlencode 'input@ready.js' http://javascript-minifier.com/raw > ready.min.js

Espero que ajude.






Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.