> formatuj | waliduj | minifikuj <
// Formatuj, waliduj i minifikuj dane JSON natychmiast
Ładne Formatowanie
Upiększ JSON z konfigurowalnym wcięciem. Wybierz 2 spacje, 4 spacje lub tabulatory.
Kompaktowe Wyjście
Minifikuj JSON usuwając wszystkie białe znaki. Zmniejsz rozmiar pliku dla produkcji i API.
Sprawdzanie Składni
Waliduj składnię JSON natychmiast. Otrzymuj szczegółowe komunikaty o błędach.
// O FORMATOWANIU JSON
Czym jest JSON:
JSON (JavaScript Object Notation) to lekki format wymiany danych zdefiniowany przez RFC 8259. Jest łatwy do odczytania i zapisu przez ludzi oraz łatwy do parsowania i generowania przez maszyny.
Przykład:
{"name":"John","age":30} → {\n "name": "John",\n "age": 30\n}
Typowe zastosowania:
- >Debugowanie i inspekcja odpowiedzi API
- >Formatowanie plików konfiguracyjnych
- >Walidacja danych przed przetworzeniem
- >Zmniejszanie rozmiaru przez minifikację
- >Sortowanie kluczy dla spójnego wyjścia
>> często zadawane pytania
P: Czym jest formater JSON?
O: Formater JSON pobiera surowe lub zminifikowane dane JSON i przeformatowuje je z odpowiednimi wcięciami i łamaniami linii.
P: Jaka jest różnica między upiększaniem a minifikacją?
O: Upiększanie dodaje wcięcia i łamania linii. Minifikacja usuwa wszystkie niepotrzebne białe znaki, aby zmniejszyć rozmiar pliku.
P: Jak działa walidacja JSON?
O: Walidacja JSON sprawdza, czy dane wejściowe są zgodne ze specyfikacją JSON (RFC 8259), w tym nawiasy, cudzysłowy i typy danych.
P: Do czego służy sortowanie kluczy?
O: Sortowanie alfabetyczne porządkuje wszystkie klucze obiektów w strukturze JSON dla łatwego porównania i spójności.
P: Jak JSON wypada w porównaniu z YAML?
O: JSON używa nawiasów klamrowych ze ścisłą składnią, podczas gdy YAML używa wcięć. JSON jest szerzej wspierany w API. YAML jest bardziej czytelny, ale trudniejszy do parsowania.
// Typowe błędy w JSON
Te zapisy działają w JavaScripcie, ale są nieprawidłowe w ścisłym JSON-ie.
| Nieprawidłowe | Prawidłowe |
|---|---|
| {'a': 1} | {"a": 1} |
| {"a": 1,} | {"a": 1} |
| {a: 1} | {"a": 1} |
| {"a": undefined} | {"a": null} |
| {"a": 01} | {"a": 1} |
// Formatowanie JSON w kodzie
JavaScript JSON.stringify(obj, null, 2) Python json.dumps(obj, indent=2, ensure_ascii=False) PHP json_encode($obj, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE) Go json.MarshalIndent(v, "", " ") Java new ObjectMapper().writerWithDefaultPrettyPrinter() CLI jq . file.json CLI python3 -m json.tool file.json
>> Więcej pytań
P: Jakiego wcięcia użyć: 2 spacje, 4 spacje czy tabulatory?
O: To kwestia umowy w zespole; najważniejsza jest spójność. 2 spacje są popularne w webie i oszczędzają szerokość przy głębokim zagnieżdżeniu, 4 spacje są częste w Pythonie, a tabulatory pozwalają każdemu ustawić własną szerokość. Do przesyłania najmniejszy jest zminifikowany JSON bez wcięć.
P: Dlaczego mój JSON jest nieprawidłowy?
O: Najczęstsze przyczyny to apostrofy zamiast cudzysłowów, klucze bez cudzysłowów, przecinek po ostatnim elemencie, komentarze, undefined, NaN lub zera wiodące w liczbach. Komunikat błędu zwykle wskazuje wiersz i kolumnę pierwszego problemu.
P: Czym są JSON5 i JSONC i jak mają się do JSON?
O: JSON5 i JSONC to rozszerzenia dopuszczające komentarze, końcowe przecinki i inne zapisy (np. w tsconfig.json lub ustawieniach VS Code). To nie jest poprawny JSON: formatter oczekuje ścisłego JSON-a, więc najpierw usuń komentarze i końcowe przecinki.