JSON Formatter
Waliduj, formatuj i minifikuj JSON z kolorowaniem składni.
O tym narzędziu
JSON Formatter parsuje dowolny dokument JSON, waliduje go wobec gramatyki RFC 8259 i reformatuje ze spójnymi wcięciami i syntax highlightingiem. Wklej wyjście z odpowiedzi API, pliku konfiguracji lub linii logu — niepoprawny JSON dostaje inline błąd z dokładną linią i kolumną parse failure; poprawny JSON dostaje pretty-print ze zwijalnymi obiektami i tablicami, byś mógł nawigować po dużych strukturach bez wiecznego scrollowania.
Poza pretty-print, narzędzie może minifikować JSON (strip każdy uniknięty bajt dla transportu), sortować klucze alfabetycznie (przydatne do diffowania dwóch configów), escapować całą wartość jako JSON-w-stringu (dla osadzania w innym payloadzie JSON) i unescapować z powrotem. Wszystko działa lokalnie w Twojej przeglądarce — żaden payload nie przechodzi przez sieć, więc jest bezpieczne dla odpowiedzi API zawierających tokeny lub PII.
Kiedy używać tego narzędzia
- Debugowanie API. Wrzuć odpowiedź curl do formattera, by ścianę kompaktowego JSON-a uczynić czytelną.
- Diffy plików konfiguracji. Posortuj oba pliki po kluczach, a potem porównaj — losowa kolejność kluczy inaczej generuje hałaśliwe diffy.
- Walidacja przed wdrożeniem. Literówka w YAML CI często ukrywa się jako zniekształcony JSON wewnątrz stringa; wklej wewnętrzny JSON, by potwierdzić, że się parsuje.
- Osadzanie JSON w JSON. Auto-escapuj payload, by mógł podróżować jako pole stringowe w innym dokumencie JSON (przydatne dla webhook bodies w templates).
Co łapie nasz walidator
RFC 8259 zabrania końcowych przecinków, komentarzy i niezacytowanych kluczy — popularnych konweniencji JS-owych. Honorujemy spec ściśle, więc JSON, który kopiujesz z naszego formattera, jest poprawny wszędzie. Jeśli musisz sformatować JSON5 lub JSONC (z komentarzami, końcowymi przecinkami), zrób wstępny przebieg "strip extras" — wiele edytorów robi to automatycznie przy zapisie jako.json.
Najczęstsze pytania
Dlaczego mój JSON z końcowymi przecinkami nie parsuje się?
{"a": 1,} jest poprawne w JavaScript, ale niepoprawne w JSON. To samo dla pojedynczo cytowanych stringów, niezacytowanych kluczy i komentarzy // — to konweniencje JS, które spec JSON celowo wykluczył dla cross-language portability. Jeśli potrzebujesz rozluźnionego formatu, spójrz na JSON5 lub JSONC; dla strict interop nasz formatter słusznie je odrzuca.
Czy mogę formatować JSON Lines (NDJSON)?
Czy narzędzie zmienia kolejność moich kluczy?
Jak duże może być wejście?
jq, fx, jless); dla typowego przypadku "odpowiedź API, która okazała się mieć 8 MB" przeglądarka radzi sobie świetnie.