Minificare e Formattare JavaScript - Terser nel browser
Minificatore e formattatore JavaScript
Accorciare i nomi locali fa risparmiare più byte, ma rompe il codice che cerca i nomi come testo: eval, new Function o un framework che legge i nomi dei parametri. Disattivalo se ci fai affidamento.
Minificazione JavaScript - domande frequenti
Formattatori più usati
Tutto Il TempoCosa fa questo strumento
Minificare JavaScript non è togliere spazi. Farlo con cerca-e-sostituisci produce file che sembrano a posto e si comportano diversamente, e la differenza salta fuori in produzione. Questa pagina esegue Terser - il motore dietro il passo di build della maggior parte dei progetti - dentro il tuo browser.
Come si usa
- 1 Incolla il JavaScript nel riquadro.
- 2 Scegli una destinazione e decidi se accorciare i nomi.
- 3 Premi Minifica, oppure Formatta per riaprire un file minificato.
Perché un parser e non un cerca-e-sostituisci
JavaScript inserisce i punti e virgola che hai omesso. Togli l’a capo tra «return» e il valore e la funzione inizia a restituire undefined: il file resta valido, fa solo un’altra cosa. Lo stesso carattere è divisione in un punto ed espressione regolare in un altro. Distinguerli richiede la grammatica, non un pattern: per questo la pagina usa un vero parser.
Che cosa si rimpicciolisce davvero
Spazi e commenti sono la parte più piccola. Il risparmio vero viene dal rinominare le variabili locali con una lettera, unire dichiarazioni separate, calcolare le costanti e buttare il codice irraggiungibile. Sono tutte operazioni sull’albero: il minificatore deve sapere che due nomi sono lo stesso legame e che nulla in mezzo lo legge.
Dove morde l’accorciamento dei nomi
Un minificatore può rinominare ciò che vede. Non vede un nome scritto come testo: eval("count + 1"), new Function("a", "return a"), o un framework che legge i nomi dei parametri per decidere cosa iniettare. Quelli continuano a cercare il vecchio nome e non trovano nulla. È una proprietà del linguaggio, non un difetto dello strumento: per questo l’interruttore è tuo.
Formattare non ti ridà il file originale
Formattare ripristina indentazione e a capo, così un file minificato torna leggibile. Non riporta ciò che è stato buttato: i commenti non ci sono più e, se i nomi erano stati accorciati, restano corti - nessuno strumento indovina che «e» era «errorMessage». Per fare debug su un file di produzione, solo una source map riporta l’originale.