DT Dev Tools

JavaScript Minifier โ€” Minificatore JavaScript

Minifica JavaScript con Terser nel browser: comprimi il codice, abbrevia i nomi, rimuovi le chiamate console e confronta le dimensioni prima e dopo.

๐Ÿ”’ Funziona interamente nel tuo browser โ€” nulla viene caricato

Drop a .js file here or click to browse โ€” or paste code below

Before: โ€“After: โ€“Saved: โ€“
Questo strumento ti รจ stato utile? Valutalo:

Come funziona la minificazione di JavaScript

La minificazione rende JavaScript piรน leggero senza cambiarne il comportamento. Questo strumento usa Terser, un minificatore maturo che analizza il codice trasformandolo in un albero sintattico astratto, lo ottimizza e lo ristampa senza spazi e commenti superflui. La fase compress applica decine di ottimizzazioni: elimina il codice irraggiungibile e le variabili inutilizzate, incorpora le costanti, unisce le dichiarazioni di variabili consecutive, trasforma quando possibile le istruzioni if in espressioni condizionali piรน brevi e calcola in anticipo le espressioni costanti semplici. La fase mangle rinomina poi variabili locali, parametri e nomi di funzione con una o due lettere. I nomi delle proprietร  e le variabili globali restano invariati, quindi il comportamento pubblico del codice non cambia.

I badge delle dimensioni mostrano il peso in byte UTF-8 di input e output e la percentuale risparmiata. Il codice scritto a mano si riduce in genere del 40โ€“70%; il codice giร  compatto o composto soprattutto da stringhe lunghe si riduce meno. Ricorda che i server di solito comprimono di nuovo JavaScript con gzip o Brotli, quindi il risparmio reale nel trasferimento รจ inferiore al valore grezzo, ma il codice minificato viene comunque analizzato piรน velocemente e consuma meno banda.

Scegliere le opzioni giuste

L'opzione ECMAScript target indica a Terser quale sintassi puรฒ usare nell'output. Con ES2020 puรฒ generare arrow function, optional chaining e altre forme moderne; con ES5 evita di introdurre sintassi piรน recente, anche se non traspila il codice moderno che hai scritto: per questo serve uno strumento come Babel o esbuild. Keep console.* conserva i log, utile per le build di staging. Attiva ES module per i file che usano import/export; permette anche di abbreviare i nomi di primo livello, perchรฉ lo scope del modulo รจ privato.

Privato per progettazione

Il minificatore viene caricato solo quando serve e funziona in locale, quindi il tuo codice sorgente non viene mai caricato online. รˆ perciรฒ adatto a piccoli interventi occasionali, come ridurre uno script inline, un bookmarklet o uno snippet per un tag manager di terze parti. Se Terser segnala un errore di sintassi, il messaggio indica riga e colonna, cosรฌ puoi correggere l'input. Per i bundle di produzione mantieni la minificazione nella pipeline di build, in modo che sia ripetibile, e genera le source map per il debug.

Come usare

  1. Aggiungi il codiceIncolla il JavaScript nel campo di input oppure trascina un file .js nell'area di rilascio.
  2. Scegli le opzioniAttiva o disattiva compressione, abbreviazione dei nomi, rimozione di console, modalitร  modulo e target ECMAScript.
  3. MinificaFai clic su Minify JavaScript per vedere l'output con le dimensioni prima e dopo e la percentuale risparmiata.
  4. Copia o scaricaCopia il codice minificato oppure scaricalo come file .min.js.

Domande frequenti

Quale minificatore viene usato?
Terser, il minificatore JavaScript predefinito di webpack e un minificatore opzionale in Vite e Rollup. Funziona interamente nel tuo browser.
Qual รจ la differenza tra compress e mangle?
Compress riscrive il codice in una forma equivalente piรน breve, eliminando il codice morto, calcolando le costanti e semplificando le espressioni. Mangle rinomina variabili locali e parametri delle funzioni con nomi brevi. Entrambe le opzioni sono sicure per il codice normale e si possono attivare separatamente.
Perchรฉ le mie chiamate console.log sono sparite?
Per impostazione predefinita il compressore elimina le chiamate console.*, una pratica comune nei bundle di produzione. Seleziona Keep console.* per conservarle.
Quando devo attivare ES module?
Attivalo se il file usa istruzioni import o export. La modalitร  modulo consente inoltre a Terser di abbreviare i nomi di primo livello: รจ sicuro per i moduli, ma puรฒ rompere gli script classici che espongono variabili globali.