Formátovat a odsadit JSON
- Dashboard
- Dokumentace
- API
Proč JSON formátování?
JSON formátování umožňuje udělat JSON data čitelnější a srozumitelnější pro developery a uživatele. Usnadňuje to debugování, code review a analýzu dat, zejména když jde o komplexní a objemné JSON soubory. Dobře formátované JSON může být také snadněji integrováno do dokumentů a reportů.
Jak formátovat JSON
Na formátovací stránce můžete formátovat svůj JSON jeho vložením do textové oblasti k tomu určené nebo nahráním souboru obsahujícího JSON.
Jakmile je JSON odeslán, bude formátován a zobrazen v oblasti výsledků. Pokud je JSON nevalidní, chyba bude zobrazena s indikací povahy problému.
Použití formátovaného JSON
Můžete zkopírovat formátované JSON použitím kopírovacího tlačítka k tomu určeného. To usnadní integraci JSON do vašich projektů nebo reportů.
Váš JSON kód by měl vypadat takto:
{
"id": 12345,
"name": "John Doe",
"email": "johndoe@example.com",
"address": {
"street": "123 Main St",
"city": "Springfield",
"state": "IL",
"postalCode": "62704",
"country": "USA"
},
"phoneNumbers": [
{
"type": "home",
"number": "555-1234"
},
{
"type": "work",
"number": "555-5678"
}
],
"orders": [
{
"orderId": 1001,
"orderDate": "2023-06-01T14:30:00Z",
"items": [
{
"productId": 2001,
"productName": "Laptop",
"quantity": 1,
"price": 999.99,
"details": {
"manufacturer": "TechCorp",
"warranty": "2 years"
}
}
],
"totalAmount": 999.99
}
],
"preferences": {
"newsletter": true,
"notifications": {
"email": true,
"sms": false
},
"theme": "dark"
},
"lastLogin": "2024-06-14T09:30:00Z"
}
Často kladené otázky
Jaký je rozdíl mezi JSON formátorem, validátorem a minifikátorem?
Formátor (beautifier) přepisuje kompaktní JSON do indentované a čitelné verze. Validátor pouze ověřuje, že syntaxe je konformní specifikaci (RFC 8259) a signalizuje chyby. Minifikátor dělá opak formátoru: odstraňuje všechny mezery pro snížení velikosti souboru. Náš nástroj kombinuje formátování a validaci: pokud je JSON nevalidní, chybová zpráva upřesňuje pozici problému.
Přijímá standardní JSON komentáře a koncové čárky?
Ne. JSON specifikace (RFC 8259) striktně zakazuje komentáře (// nebo /* */) a koncové čárky po posledním elementu pole nebo objektu. Pokud je potřebujete, podívejte se na JSON5 nebo JSONC, dvě rozšíření přijímající komentáře a koncové čárky, používaná zejména konfiguračními soubory VS Code a TypeScriptu.
Proč musí řetězce používat dvojité uvozovky?
JSON specifikace vnucuje dvojité uvozovky (") pro všechny řetězce a klíče objektů. Jednoduché uvozovky (') nejsou validní, i když je JavaScript přijímá. Častá chyba při kopírování z JS kódu je zachování jednoduchých uvozovek: formátor pak signalizuje chybu parsingu.
Jak spravovat velká čísla nebo desetinná čísla s velkou přesností?
JSON nerozlišuje celá od float čísel: vše je number. JavaScript parsery automaticky konvertují na Number, který ztrácí přesnost nad 2^53 (celá) a má float přesnost omezenou na 15 signifikantních číslic. Pro dlouhé identifikátory (Twitter ID, Discord snowflakes) nebo finanční částky je kódujte jako řetězec ("123456789012345678") pro zachování přesnosti.
Jakou indentaci zvolit: 2 nebo 4 mezery?
Indentace 2 mezerami je dominantní konvence (Prettier, ESLint default, npm konvence), zůstává čitelná i pro velmi vnořené dokumenty. Indentace 4 mezerami vyhovuje plochým dokumentům, kde vertikalita pomáhá čtení. Podstatná je konzistence ve stejném projektu. Náš nástroj používá výchozí 4 mezery, konformní s pretty print json_encode(JSON_PRETTY_PRINT) v PHP.
Co dělat, když můj JSON obsahuje Unicode znaky nebo emoji?
JSON nativně podporuje UTF-8. Emoji, diakritiky, CJK znaky a jiné nelatinské skripty jsou zachovány jak jsou ve formátovaném výstupu. Pokud váš JSON používá Unicode escape (é pro é), zůstává validní, ale formátor ho nepřepisuje na nativní znak. Pro normalizaci projděte přes striktní parser jako JSON.parse následovaný JSON.stringify.
Ukázka požadavku
curl -X POST https://cdrn.fr/api/v1/tools/json-formatter/execute \
-H "Content-Type: application/json" \
-d '{"input":"..."}'
Vstupní schéma
| Pole | Typ | Povinné | Výchozí |
|---|---|---|---|
input |
text | ✓ | – |
Koncové body
GET https://cdrn.fr/api/v1/tools- vypíše všechny dostupné nástrojeGET https://cdrn.fr/api/v1/tools/json-formatter- získá schéma tohoto nástrojePOST https://cdrn.fr/api/v1/tools/json-formatter/execute- spustí tento nástroj s JSON payloadem