Formatarea și indentarea JSON
- Panou de control
- Documentație
- API
De ce formatarea JSON?
Formatarea JSON permite a face datele JSON mai lizibile și de înțeles pentru dezvoltatori și utilizatori. Aceasta facilitează debug-ul, code review-ul și analiza datelor, în special când e vorba de fișiere JSON complexe și voluminoase. Un JSON bine formatat poate fi de asemenea integrat mai ușor în documente și rapoarte.
Cum să formatezi JSON
Pe pagina de formatare, poți formata JSON-ul tău lipindu-l în zona de text prevăzută în acest scop sau încărcând un fișier conținând JSON.
De îndată ce JSON-ul este trimis, va fi formatat și afișat într-o zonă de rezultat. Dacă JSON-ul este invalid, o eroare va fi afișată cu o indicație a naturii problemei.
Utilizarea JSON-ului formatat
Poți copia JSON-ul formatat utilizând butonul de copiere prevăzut în acest scop. Aceasta va facilita integrarea JSON-ului în proiectele sau rapoartele tale.
Codul tău JSON ar trebui să arate astfel:
{
"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"
}
},
{
"productId": 2002,
"productName": "Mouse",
"quantity": 2,
"price": 25.50,
"details": {
"manufacturer": "GadgetCo",
"warranty": "1 year"
}
}
],
"totalAmount": 1051.49
}
],
"preferences": {
"newsletter": true,
"notifications": {
"email": true,
"sms": false
},
"theme": "dark"
},
"lastLogin": "2024-06-14T09:30:00Z"
}
Întrebări frecvente
Care este diferența între un formatator, un validator și un minificator JSON?
Un formatator (beautifier) rescrie un JSON compact în versiune indentată și lizibilă. Un validator verifică doar că sintaxa este conformă specificației (RFC 8259) și semnalează erorile. Un minificator face inversul formatatorului: elimină toate spațiile pentru a reduce dimensiunea fișierului. Instrumentul nostru combină formatare și validare: dacă JSON-ul este invalid, un mesaj de eroare precizează poziția problemei.
JSON-ul standard acceptă comentarii și virgule de sfârșit?
Nu. Specificația JSON (RFC 8259) interzice strict comentariile (// sau /* */) și virgulele de sfârșit după ultimul element al unui tablou sau obiect. Dacă ai nevoie, uită-te la JSON5 sau JSONC, două extensii care acceptă comentarii și virgule de sfârșit, utilizate în special de fișierele de configurare VS Code și TypeScript.
De ce șirurile trebuie să utilizeze ghilimele duble?
Specificația JSON impune ghilimelele duble (") pentru toate șirurile și toate cheile de obiect. Ghilimelele simple (') nu sunt valide, chiar dacă JavaScript le acceptă. O eroare frecventă la copierea din cod JS este păstrarea ghilimelelor simple: formatatorul semnalează atunci o eroare de parsing.
Cum să gestionez numerele mari sau numerele cu zecimale foarte precise?
JSON nu distinge întregii de numerele flotante: totul este number. Parserii JavaScript convertesc automat în Number, care pierde din precizie dincolo de 2^53 (întregi) și are o precizie flotantă limitată la 15 cifre semnificative. Pentru identificatorii lungi (Twitter IDs, snowflakes Discord) sau sumele financiare, codează-le ca șir ("123456789012345678") pentru a păstra precizia.
Ce indentare să aleg: 2 sau 4 spații?
Indentarea la 2 spații este convenția dominantă (Prettier, ESLint implicit, convenții npm), rămâne lizibilă chiar și pentru documente foarte imbricate. Indentarea la 4 spații convine documentelor plate unde verticalitatea ajută citirea. Esențialul este coerența într-un același proiect. Instrumentul nostru utilizează 4 spații implicit, conform pretty print-ului din json_encode(JSON_PRETTY_PRINT) în PHP.
Ce să fac dacă JSON-ul meu conține caractere Unicode sau emoji?
JSON suportă nativ UTF-8. Emoji-urile, accentele, caracterele CJK și alte scripturi non-latine sunt păstrate ca atare în ieșirea formatată. Dacă JSON-ul tău utilizează escape-ul Unicode (é pentru é), rămâne valid dar formatatorul nu îl rescrie în caracter nativ. Pentru a normaliza, treci prin un parser strict precum JSON.parse urmat de JSON.stringify.
Exemplu de cerere
curl -X POST https://cdrn.fr/api/v1/tools/json-formatter/execute \
-H "Content-Type: application/json" \
-d '{"input":"..."}'
Schema de intrare
| Câmp | Tip | Obligatoriu | Implicit |
|---|---|---|---|
input |
text | ✓ | – |
Puncte de acces
GET https://cdrn.fr/api/v1/tools- listează toate instrumentele disponibileGET https://cdrn.fr/api/v1/tools/json-formatter- obține schema acestui instrumentPOST https://cdrn.fr/api/v1/tools/json-formatter/execute- execută acest instrument cu un payload JSON