Darmowy konwerter

Formater JSON & Walidator

Formatuj, upiększaj i sprawdzaj JSON natychmiast w swojej przeglądarce. Nie jest wymagane przesyłanie — całkowicie prywatne i bezpłatne.

Przeciągnij i upuść tutaj plik JSON

Obsługuje pliki .json. Lub wklej swój JSON w obszarze powyżej.

Lub

O tym narzędziu

Formatowanie JSON (często nazywane ładnym drukowaniem lub upiększaniem) wykorzystuje kompaktowy JSON i dodaje białe znaki — podziały wierszy, wcięcia, spójne odstępy — aby struktura była widoczna dla ludzkich czytelników. Kompaktowy JSON to właściwy format transmisji: minimalizuje liczbę bajtów w sieci i pamięci. Sformatowany JSON to właściwy format do inspekcji: hierarchia z wcięciami pozwala na pierwszy rzut oka ujawnić zagnieżdżoną strukturę, nadać różnicom sens i pozwala programistom zlokalizować określone pola bez mentalnego analizowania dokumentu.

Ten program formatujący analizuje dane wejściowe w formacie JSON, aby potwierdzić, że są prawidłowe, a następnie emituje je ponownie ze spójnym wcięciem. Nieprawidłowe dane wejściowe powodują błąd wskazujący na problem ze składnią. Prawidłowe dane wejściowe są ponownie formatowane niezależnie od tego, jak zwarte i niechlujne było źródło. Wcięcie domyślnie wynosi dwie spacje, zgodnie z najczęstszą konwencją JavaScript.

Program formatujący oferuje również minifikację (operacja odwrotna), która usuwa wszystkie niepotrzebne białe znaki w celu uzyskania najmniejszego prawidłowego formatu JSON. Zminimalizowane wyjście jest przydatne do transmisji produkcyjnej; sformatowane dane wyjściowe są przydatne do programowania i debugowania.

Po co formatować JSON

Odczyt głęboko zagnieżdżonego JSON bez wcięć jest w zasadzie niemożliwy — struktura jest technicznie obecna, ale niewidoczna. Nawet średnio złożony JSON czerpie ogromne korzyści z formatowania. Recenzenci kodu, debugery API i wszyscy, którzy próbują zrozumieć ładunek danych, potrzebują sformatowanego formatu JSON, aby zobaczyć, co faktycznie tam jest.

Formatowanie również wychwytuje błędy. Jeśli podczas formatowania nie uda się przeanalizować kodu JSON, komunikat o błędzie będzie dokładnie określał położenie problemu ze składnią — często brakujący przecinek, klucz bez cudzysłowu lub zabłąkany przecinek końcowy, którego system produkcyjny nie oznaczył. Formater to najprostszy dostępny walidator JSON.

Jak używać

Wklej JSON, kliknij format.

  1. Wklej swój JSON: Wklej surowy lub kompaktowy JSON do obszaru wejściowego. Działa również metoda przeciągania i upuszczania plików .json.
  2. Wybierz wcięcie: Wartość domyślna to 2 spacje. Użyj 4 spacji dla projektów zgodnych z tą konwencją lub zakładek, jeśli wymagają tego Twoje dalsze narzędzia.
  3. Sformatuj: Dane wejściowe są analizowane za pomocą pliku JSON.parse w celu potwierdzenia ważności, a następnie serializowane za pomocą pliku JSON.stringify i wybranego wcięcia. Błędy we danych wejściowych powodują wyświetlenie komunikatu o błędzie analizy identyfikującego lokalizację problemu.
  4. Skopiuj lub pobierz: Skopiuj sformatowany JSON do schowka lub zapisz jako .json. Dane wyjściowe są strukturalnie identyczne z danymi wejściowymi, ale zawierają spójne białe znaki.

Typowe przypadki użycia

Szczegóły techniczne

Formater używa JSON.parse i JSON.stringify, tej samej pary, która jest dostarczana w każdym środowisku wykonawczym JavaScript. Analizowanie odbywa się zgodnie z RFC 8259 (bieżąca specyfikacja JSON), akceptując ścisły JSON, ale odrzucając literały obiektów JavaScript, komentarze, końcowe przecinki i inne rozszerzenia JSON5.

JSON.stringify akceptuje argument wcięcia: liczbę (spacje) lub ciąg (niestandardowy znak wcięcia, taki jak tabulator). Program formatujący udostępnia obie opcje. Dane wyjściowe są sortowane według kolejności źródłowej obiektów (ponieważ w wersji ES2015 zachowano kolejność wstawiania właściwości we wszystkich głównych silnikach).

Przypadki Edge: duże liczby przekraczające Number. MAX_SAFE_INTEGER tracą precyzję podczas analizowania (znane ograniczenie JSON; używaj wartości łańcuchowych dla identyfikatorów przekraczających 2^53). Ucieczki Unicode w ciągach znaków są zachowywane dosłownie. Końcowe białe znaki są usuwane z każdej linii.

Najlepsze praktyki

Często zadawane pytania

Jakie typy błędów JSON wykrywa to narzędzie?
Narzędzie wykrywa brakujące przecinki, niedopasowane nawiasy/nawiasy klamrowe, zmianę znaczenia nieprawidłowego ciągu, przecinki końcowe, ciągi znaków w pojedynczych cudzysłowach i inne naruszenia składni zgodnie ze specyfikacją JSON RFC 8259.
Czy może obsłużyć bardzo duże pliki JSON?
Tak. Formater przetwarza JSON w Twojej przeglądarce przy użyciu natywnej analizy JavaScript, dzięki czemu sprawnie obsługuje pliki o wielkości do kilku megabajtów. W przypadku bardzo dużych plików (50 MB i więcej) czas przetwarzania zależy od urządzenia.
Czy obsługuje JSON z komentarzami (JSONC)?
Standardowy JSON nie pozwala na komentarze. Jeśli Twoje dane wejściowe zawierają komentarze, walidator oznaczy je jako błędy. Aby uzyskać obsługę JSONC, usuń komentarze przed formatowaniem.
Czy formatowanie zmieni wartości moich danych?
Nie. Formatowanie dostosowuje tylko białe znaki i wcięcia — typy danych, wartości i struktura pozostają dokładnie takie same.
Czy obsługiwane są funkcje JSON5 (komentarze, przecinki końcowe)?
Nie. Formatyzator ściśle przestrzega normy RFC 8259. Funkcje JSON5 powodują błędy analizy. Aby pracować z JSON5, najpierw przekonwertuj go na standardowy JSON za pomocą parsera JSON5.
Czy mój plik JSON został przesłany na serwer?
Nie. Analizowanie i formatowanie odbywa się całkowicie w przeglądarce przy użyciu wbudowanych funkcji JSON.
Czy duże liczby stracą precyzję?
JavaScript reprezentuje liczby jako 64-bitowe liczby zmiennoprzecinkowe, więc liczby całkowite powyżej 2^53 (około 9 biliardów) tracą precyzję. W przypadku identyfikatorów lub innych dużych wartości całkowitych przechowuj je jako ciągi w formacie JSON.
Czy mogę posortować klucze alfabetycznie?
JSON.stringify nie sortuje kluczy. Użyj osobnego etapu sortowania (lub programu formatującego z obsługą sortowania), aby ułożyć klucze alfabetycznie przed utworzeniem ciągu znaków.