Esiste un buon minificatore JavaScript? [chiuso]


132

Quale minificatore JavaScript mi ​​consigliate?



Sebbene la domanda sia vecchia e chiusa, a partire dal 2019 - terser ( github.com/terser-js/terser ) è un minatore fatato. C'è anche un plugin per Rollup che è ottimo per minimizzare i bundle al volo.
Levi Roberts,

Risposte:


111

UglifyJS2 , utilizzato dal progetto jQuery.


17
Puoi usare UglifyJS online senza la necessità di installarlo - jscompress.com . +1 per il prodotto utilizzato da jQuery
TMS

1
è usato più della chiusura?
FutuToad,

@FutuToad: la versione corrente è UglifyJS2 . Stavo cercando un confronto tra i minificatori e ho trovato le statistiche qui lisperator.net/uglifyjs - sembra che Google Closure sia più lento di UglifyJS. Tuttavia, Closure può minimizzare i progetti AngularJS. Quindi non esiste un chiaro vincitore. La mia ipotesi è (dopo un'ora di ricerche) che UglifyJS2 viene utilizzato più di GC.
Martin Vseticka,

PS: puoi provare Minify JS basato su UglifyJS2 e i tuoi codici sorgente non verranno inviati a un server remoto. ;)
Martin Vseticka,

UglifyJS supporta es6? tutti gli strumenti che ho riscontrato gli errori di lancio poiché utilizzo molta funzionalità es6 nei miei file.
kinger6621,

31

Attivo

Obsoleto


Google Closure Compiler generalmente ottiene file più piccoli rispetto a YUI Compressor, in particolare se usi la modalità avanzata, che mi preoccupa in modo preoccupante ma che ha funzionato bene su un progetto su cui l'ho usato:

Diversi grandi progetti usano UglifyJS e ne sono rimasto molto colpito da quando sono passato.


2
La modalità semplice di Google CC raggiunge anche dimensioni inferiori rispetto a YUI ed è anche sicura
gblazex

10

Se stai usando PHP potresti anche dare un'occhiata a minify che può minimizzare e combinare i file JavaScript. L'integrazione è piuttosto semplice e può essere eseguita da gruppi di file definiti o da una stringa di query semplice. I file minimizzati vengono anche memorizzati nella cache per ridurre il carico del server ed è possibile aggiungere le intestazioni di scadenza tramite minimizza.


10

JavaScript Minifier offre una buona API che puoi usare a livello di codice:

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

O caricando un file e reindirizzando a un nuovo file:

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

Spero che aiuti.






Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.