UTILS.
100% w przeglądarce
🎨

Upiększacz / Formater JavaScript

Formatuj zminifikowany lub nieuporządkowany JavaScript i JSON z jednolitymi wcięciami, odstępami i podziałami wierszy — ręcznie napisany formater działający w całości w przeglądarce.

— wynik pojawi się tutaj —

O tym narzędziu

Upiększacz JavaScript przekształca zminifikowany, jednowierszowy lub niespójnie wcięty JavaScript i JSON w czysty, czytelny kod źródłowy z jednolitymi wcięciami i odstępami. Przydaje się do czytania spakowanej biblioteki, porządkowania skopiowanego fragmentu lub przeglądania bloku JSON. Wszystko dzieje się w Twojej przeglądarce — kod jest tylko formatowany jako tekst, nigdy wykonywany, więc nie ma eval, nie ma new Function i nic nie jest wysyłane.

Formater to ręcznie napisany tokenizator, a nie hack na wyrażeniach regularnych: skanuje kod źródłowy na tokeny, poprawnie pomijając wnętrza ciągów znaków, literałów szablonowych, wyrażeń regularnych oraz komentarzy wierszowych/blokowych, więc cudzysłowy i ukośniki wewnątrz nich nigdy nie są mylnie brane za strukturę. Klasyczna heurystyka lookbehind odróżnia operator dzielenia od literału wyrażenia regularnego. Strumień tokenów jest następnie ponownie emitowany z nowymi wierszami po '{', '[' i ';', wcięciami cofniętymi w wierszach przed '}' i ']', jednym elementem na wiersz wewnątrz literałów obiektów i tablic oraz pojedynczą spacją wokół operatorów i po słowach kluczowych.

Wybierz wcięcie 2 spacje, 4 spacje lub tabulator oraz styl nawiasów klamrowych: collapse zostawia otwierający nawias w tym samym wierszu (K&R / 1TBS), podczas gdy expand przenosi go do osobnego wiersza (Allman). Ponieważ narzędzie zachowuje zawartość ciągów i wyrażeń regularnych bajt po bajcie, sformatowany kod jest semantycznie identyczny z danymi wejściowymi. Skopiuj wynik bezpośrednio do swojego edytora.

Najczęściej zadawane pytania

Czy uruchamia lub wykonuje mój kod?
Nie. Upiększacz tylko tokenizuje i ponownie emituje Twój kod źródłowy jako tekst. Nigdy nie wywołuje eval ani new Function i nigdy nie wykonuje kodu, więc wklejanie niezaufanego lub zastrzeżonego JavaScriptu jest bezpieczne. Cała praca pozostaje w Twojej przeglądarce.
Czy działa też na JSON?
Tak. JSON jest podzbiorem składni JavaScript, więc wklejenie zminifikowanego obiektu lub tablicy JSON przekształca je w formę z wcięciami, jeden klucz na wiersz. Ciągi znaków, liczby i zagnieżdżone struktury są formatowane tak samo jak w JavaScript.
Jaka jest różnica między stylami nawiasów klamrowych?
Collapse (K&R / 1TBS) zostawia otwierający nawias w tym samym wierszu co instrukcja, np. 'if (x) {'. Expand (Allman) umieszcza otwierający nawias w osobnym wierszu pod instrukcją. Oba dają identyczny, poprawny kod — różni się tylko układ.
Czy zmieni to, co robi mój kod?
Nie. Zmieniają się tylko białe znaki, wcięcia i podziały wierszy. Zawartość ciągów znaków, literałów szablonowych i wyrażeń regularnych jest zachowywana dokładnie, więc sformatowany wynik jest funkcjonalnie identyczny z oryginalnym kodem źródłowym.

Więcej narzędzi