> 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: Czy upiększanie zmienia moje dane?
O: Nie, zmieniają się tylko białe znaki i wcięcia. Kolejność kluczy i wartości pozostają bez zmian, chyba że wyraźnie włączysz sortowanie kluczy.
P: Czy duże liczby tracą dokładność?
O: JavaScript odczytuje liczby jako 64-bitowe zmiennoprzecinkowe, więc liczby całkowite powyżej 9 007 199 254 740 991 (2^53−1) mogą stracić dokładność. Jeśli Twoje identyfikatory są tak duże, przechowuj je jako ciągi znaków.
P: Czym JSON różni się od obiektu JavaScript?
O: JSON to ścisły format tekstowy: klucze i ciągi znaków w podwójnych cudzysłowach, bez funkcji, undefined, komentarzy i końcowych przecinków. Literał obiektu w JavaScripcie jest znacznie bardziej liberalny.