formatuj | waliduj | minifikuj

> formatuj | waliduj | minifikuj <

// Formatuj, waliduj i minifikuj dane JSON natychmiast

[FORMAT]

Ładne Formatowanie

Upiększ JSON z konfigurowalnym wcięciem. Wybierz 2 spacje, 4 spacje lub tabulatory.

[MINIFY]

Kompaktowe Wyjście

Minifikuj JSON usuwając wszystkie białe znaki. Zmniejsz rozmiar pliku dla produkcji i API.

[VALIDATE]

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łowePrawidł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.

// INNE JĘZYKI