100 % locale — i tuoi dati non lasciano mai il tuo browser

Formattatore JavaScript — leggi uno script minificato

Reindenta JavaScript. Stringhe, template literal ed espressioni regolari passano intatti, e anche i tuoi commenti: il codice continua a funzionare.

Istantaneo Privato Zero cookie
Indentazione

Input JavaScript

Output JavaScript

Che cosa fa questo strumento

JavaScript minificato o spaziato male diventa JavaScript leggibile.

const a=[1,2,3].map(x=>x*2);if(a){b()}
const a = [1, 2, 3].map(x => x * 2);
if (a) {
  b()
}

Spazi attorno agli operatori, un’istruzione per riga, un livello di indentazione per blocco — due spazi per impostazione predefinita, quattro se preferisci. Il codice che esce gira esattamente come quello che è entrato.

Ciò che la minificazione ha portato via, la formattazione non lo rende

function t(e){return e*2}
function t(e) {
  return e * 2
}

La struttura è tornata; i nomi no. I minificatori rinominano per risparmiare byte, e il moltiplicaPerDue originale non è nascosto da qualche parte nel file: non c’è più. La formattazione è l’unica metà reversibile. Se il sito ha pubblicato una source map, è quella a portare i nomi, e gli strumenti per sviluppatori di un browser la usano.

Che cosa copia alla lettera

  • Stringhe e template. "a b" tiene i suoi due spazi: tra virgolette, uno spazio è un valore, non impaginazione.
  • Espressioni regolari. /a b/ resta com’è — uno spazio in un modello corrisponde a uno spazio.
  • Commenti. Di riga o di blocco, tengono il loro posto, insieme all’intestazione di licenza in cima al file.

Non è un validatore né un linter

Il codice rotto torna indentato invece che segnalato, il che è spesso quello che vuoi quando cerchi il punto in cui si rompe — ma un risultato ordinato non è un verdetto. Per sapere se si analizza, eseguilo o aprilo nel tuo editor; per lo stile e gli errori, ESLint o l’equivalente nel tuo progetto.

Privato per progettazione

Tutto viene eseguito localmente nel browser con JavaScript. I tuoi dati non vengono mai caricati, quindi lo strumento è sicuro per contenuti sensibili e funziona anche offline.

Domande frequenti

Ho incollato codice minificato e i nomi sono ancora di una lettera.
E tali resteranno. Minificare rinomina `userProfile` in `t`, e quel rinominare non è reversibile: i nomi originali semplicemente non sono più nel file. Un formattatore restituisce gli spazi e gli a capo, il che rende leggibile la struttura — i cicli, i rami, i ritorni — ma nessuno strumento restituisce un nome che è stato buttato. Una source map sì, se il sito ne ha pubblicata una.
Cambia il mio codice?
Solo i suoi spazi. Stringhe, template ed espressioni regolari vengono copiati così come sono: uno spazio dentro `"a b"` o dentro `/a b/` fa parte del valore, non dell’impaginazione. Niente viene rinominato, niente riordinato, nessun punto e virgola aggiunto: questa è impaginazione, non riscrittura.
È un linter?
No. Non dice nulla su variabili inutilizzate, `==` contro `===`, o un `let` che dovrebbe essere `const`. Non controlla nemmeno che il file si analizzi: JavaScript rotto torna reindentato, il che spesso aiuta a trovare dove si rompe, ma non è un verdetto. Di questo si occupano ESLint e il tuo editor.

Convertitori correlati