JavaScript-formaterer og -minifiserer
Gjør minifisert JavaScript lesbart, minifiser det med Terser, eller sjekk syntaksen og få nøyaktig linje og kolonne for feil. Kjører bare i nettleseren din.
Slik formaterer eller minifiserer du JavaScript
- Lim inn koden din, eller klikk Åpne fil for å laste en
.js-,.mjs- eller.jsx-fil (opptil 10 MB). - Velg Innrykk, og huk av for Klammer på egen linje hvis du foretrekker Allman-stilen.
- Klikk Formater (pent oppsett) for å gjøre koden lesbar.
- For å gjøre den mindre setter du Valg for minifisering og klikker Minifiser. Vil du bare lete etter feil, klikker du Sjekk syntaks.
- Kopier eller last ned resultatet. Statuslinjen viser størrelsen før og etter, og hvor mange prosent du sparte.
Koden blir bare lest og omformet, aldri kjørt: ingenting du limer inn, utføres på denne siden.
Pent oppsett med js-beautify
Formater (pent oppsett) bruker js-beautify. Den setter én setning per linje, rykker inn blokker, legger til mellomrom rundt operatorer og etter nøkkelord, og beholder opptil én tom linje der du hadde noen. Den forstår også moderne syntaks (klasser, pilfunksjoner, malstrenger, async/await) og JSX. Det er den raskeste måten å lese et minifisert bibliotek eller et utdrag på én linje som er kopiert fra en nettside.
Pent oppsett endrer bare mellomrom og linjeskift. Det sjekker ikke at koden er gyldig: en manglende parentes gir bare merkelig innrykk. Bruk Sjekk syntaks til det.
Minifiser med Terser
Minifiser bruker Terser, minifisereren som brukes av de fleste byggeverktøy for JavaScript. Fordi den er stor, lastes den bare ned første gang du klikker Minifiser eller Sjekk syntaks. Valgene tilsvarer direkte innstillinger i Terser:
- ES-modul (import/export) tolker koden som en modul (
module: true): streng modus gjelder og navn på toppnivå er private, så de kan gis nye navn og ubrukte kan fjernes. La den stå uavkrysset for et klassisk skript der globale funksjoner brukes av andre skript. - Komprimer (
compress) skriver koden om til kortere, tilsvarende kode: sammenslåing av konstanter (2*60blir120), fjerning av død kode, sammenslåing avvar-deklarasjoner og kortere betingelser. - Forkort variabelnavn (
mangle) gir lokale variabler og parametere navn på én eller to bokstaver. Globale navn og objektegenskaper får aldri nytt navn. - Behold lisenskommentarer beholder kommentarer som begynner med
/*!eller inneholder@licenseeller@preserve. Alle andre kommentarer fjernes.
Minifisering kan ikke endre hva koden gjør, men kode som er avhengig av funksjonsnavn (fn.name) eller av eval, kan oppføre seg annerledes etter at navnene er endret. Fjern i så fall avkrysningen for Forkort variabelnavn.
Syntaksfeil med linje og kolonne
Når Terser ikke kan lese koden, viser Minifiser og Sjekk syntaks feilmeldingen med linje og kolonne, for eksempel «Linje 12, kolonne 8 – Syntaksfeil: Unexpected token punc «)»». Kolonnen teller tegn fra 1. En typisk årsak er en manglende klammeparentes tidligere i filen, så se også på linjene like før den oppgitte posisjonen.
Ofte stilte spørsmål
Lastes koden min opp noe sted?
Nei. js-beautify og Terser kjører begge i nettleseren din, og koden blir værende på datamaskinen din.
Kan jeg minifisere TypeScript?
Nei. Terser godtar bare JavaScript. Kompiler TypeScript til JavaScript først, og minifiser deretter resultatet. Å formatere enkel TypeScript med Formater (pent oppsett) fungerer ofte, men typeannotasjoner kan få litt rare mellomrom.
Hvorfor ser den minifiserte koden annerledes ut enn det jeg skrev?
Komprimer beregner konstante uttrykk, setter inn verdier som brukes én gang, og fjerner kode som aldri kan nås. Resultatet oppfører seg likt. Fjern avkrysningen for Komprimer for å bare fjerne mellomrom og kommentarer.
Må «ES-modul» stemme med koden min?
Ja. Kode med import eller export bør minifiseres som modul. Et klassisk skript som minifiseres som modul, kan miste globale funksjoner som andre skript kaller, fordi navn på toppnivå da behandles som private.
Hva med JSON?
JSON er gyldig JavaScript, så begge knappene godtar det, men den egne JSON-formatereren gir bedre feilmeldinger og kan sortere nøkler.
Relaterte verktøy
- JSON-formaterer og -validator Gratis JSON-formaterer og -validator som gjør JSON ryddig, minifiserer og kontrollerer den i nettleseren din, med syntaksfeil oppgitt med linje og kolonne.
- CSS-formaterer og -minifiserer Gjør rotete CSS ryddig med riktig innrykk, eller minifiser den med csso, og se størrelsen før og etter. Kjører i nettleseren din, ingenting lastes opp.
- HTML-formaterer Gjør rotete HTML ryddig med riktig innrykk, eller minifiser den trygt, i nettleseren din. Innebygd CSS og JavaScript formateres også. Ingenting lastes opp.
- Regex-tester Test regulære uttrykk i JavaScript live, med uthevede treff, fangstgrupper, erstatning og en forklaring på vanlig norsk av hvert enkelt element i mønsteret.