Formátovač a minifikátor JavaScriptu
Zpřehledni minifikovaný JavaScript, minifikuj ho pomocí Terseru nebo zkontroluj syntaxi s přesným řádkem a sloupcem chyby. Funguje jen ve tvém prohlížeči.
Jak formátovat nebo minifikovat JavaScript
- Vlož svůj kód, nebo klikni na Otevřít soubor a načti soubor
.js,.mjsči.jsx(do 10 MB). - Zvol Odsazení a pokud preferuješ styl Allman, zaškrtni Složené závorky na samostatném řádku.
- Kliknutím na Formátovat (zpřehlednit) kód zpřehledníš.
- Chceš-li ho zmenšit, nastav Možnosti minifikace a klikni na Minifikovat. Pokud hledáš jen chyby, klikni na Zkontrolovat syntaxi.
- Výsledek zkopíruj nebo stáhni. Stavový řádek ukazuje velikost před a po a ušetřená procenta.
Kód se pouze čte a transformuje, nikdy se nespouští: nic, co vložíš, se na této stránce nevykoná.
Zpřehlednění pomocí js-beautify
Formátovat (zpřehlednit) používá js-beautify. Každý příkaz dá na samostatný řádek, odsadí bloky, přidá mezery kolem operátorů a za klíčová slova a ponechá nejvýše jeden prázdný řádek tam, kde jsi nějaký měl. Rozumí také moderní syntaxi (třídám, šipkovým funkcím, šablonovým řetězcům, async/await) i JSX. Je to nejrychlejší způsob, jak přečíst minifikovanou knihovnu nebo jednořádkový úryvek zkopírovaný z webové stránky.
Zpřehlednění mění jen mezery. Neověřuje, zda je kód platný: chybějící závorka prostě vytvoří podivné odsazení. K tomu použij Zkontrolovat syntaxi.
Minifikace pomocí Terseru
Minifikovat používá Terser, minifikátor, který využívá většina nástrojů pro sestavování JavaScriptu. Protože je velký, stahuje se až při prvním kliknutí na Minifikovat nebo Zkontrolovat syntaxi. Možnosti odpovídají přímo nastavení Terseru:
- Modul ES (import/export) zpracuje kód jako modul (
module: true): platí striktní režim a názvy na nejvyšší úrovni jsou soukromé, takže je lze přejmenovat a nepoužívané odstranit. U klasického skriptu, jehož globální funkce používají jiné skripty, volbu nech nezaškrtnutou. - Komprimovat (
compress) přepíše kód do kratšího rovnocenného kódu: vyhodnocení konstant (2*60se změní na120), odstranění mrtvého kódu, spojení deklaracívar, kratší podmínky. - Zkrátit názvy proměnných (
mangle) přejmenuje lokální proměnné a parametry na jedno nebo dvě písmena. Globální názvy a vlastnosti objektů se nikdy nepřejmenovávají. - Zachovat licenční komentáře ponechá komentáře začínající
/*!nebo obsahující@licenseči@preserve. Všechny ostatní komentáře se odstraní.
Minifikace nemůže změnit, co kód dělá, ale kód, který se opírá o názvy funkcí (fn.name) nebo o eval, se po přejmenování může chovat jinak. V takovém případě zruš zaškrtnutí Zkrátit názvy proměnných.
Syntaktické chyby s řádkem a sloupcem
Když Terser kód nedokáže zpracovat, Minifikovat a Zkontrolovat syntaxi zobrazí chybové hlášení s řádkem a sloupcem, například „Řádek 12, sloupec 8 – Syntaktická chyba: Unexpected token punc «)»“. Sloupec se počítá po znacích od 1. Typickou příčinou je chybějící závorka dříve v souboru, proto se podívej i na řádky těsně před hlášenou pozicí.
Časté dotazy
Nahrává se můj kód někam?
Ne. js-beautify i Terser běží ve tvém prohlížeči a tvůj kód zůstává na tvém počítači.
Mohu minifikovat TypeScript?
Ne. Terser přijímá jen JavaScript. Nejdřív zkompiluj TypeScript do JavaScriptu a pak minifikuj výstup. Formátování jednoduchého TypeScriptu pomocí Formátovat (zpřehlednit) často funguje, ale typové anotace mohou mít zvláštní mezery.
Proč vypadá můj minifikovaný kód jinak, než jsem napsal?
Komprimovat vyhodnocuje konstantní výrazy, vkládá hodnoty použité jednou a odstraňuje nedosažitelný kód. Výsledek se chová stejně. Zrušením volby Komprimovat odstraníš jen mezery a komentáře.
Musí „Modul ES“ odpovídat mému kódu?
Ano. Kód s import nebo export by se měl minifikovat jako modul. Klasický skript minifikovaný jako modul by mohl přijít o globální funkce, které volají jiné skripty, protože názvy na nejvyšší úrovni se pak berou jako soukromé.
A co JSON?
JSON je platný JavaScript, takže ho přijmou obě tlačítka, ale specializovaný formátovač JSON dává lepší chybová hlášení a řadí klíče.
Související nástroje
- Formátovač a validátor JSON Bezplatný formátovač a validátor JSON, který zpřehlední, minifikuje a ověří JSON ve tvém prohlížeči a syntaktické chyby hlásí s řádkem a sloupcem.
- Formátovač a minifikátor CSS Zpřehledni nepřehledné CSS čistým odsazením nebo ho minifikuj pomocí csso a podívej se na velikost před a po. Funguje v prohlížeči, nic se nenahrává.
- Formátovač HTML Zpřehledni nepřehledné HTML čistým odsazením nebo ho bezpečně minifikuj přímo v prohlížeči. Formátuje se i vložené CSS a JavaScript. Nic se nenahrává.
- Tester regulárních výrazů Testuj regulární výrazy JavaScriptu naživo: zvýrazněné shody, zachytávací skupiny, nahrazování a srozumitelné vysvětlení každé části výrazu.