tigtools

JSON-formázó

Illessze be a JSON-t a formázáshoz vagy tömörítéshez. Ha nem érvényes, látni fogja, mi a hiba és hol. Az adatai a böngészőjében maradnak.

Böngészőben fut Regisztráció nélkül

Behúzás

Használata

  1. Illessze be a JSON-t a beviteli mezőbe, vagy kattintson a „Példa kipróbálása” gombra.
  2. Válassza ki a behúzást (2 szóköz, 4 szóköz vagy tabulátor), és ha szeretné, rendezze a kulcsokat ábécérendbe.
  3. Olvassa el a formázott eredményt a jobb oldalon. Ha inkább az összes szóköz eltávolítását szeretné, nyomja meg a Tömörítés gombot.
  4. Ha a JSON szintaktikai hibát tartalmaz, javítsa a megjelenített sor és oszlop alapján, majd másolja vagy töltse le az eredményt .json fájlként.

Hogyan működik

A formázó a böngésző beépített JSON-elemzőjével értelmezi a szöveget, majd a választott behúzással írja ki újra, így a kimenet mindig érvényes, egységesen behúzott JSON. A Tömörítés ugyanezeket az adatokat szóközök és sortörések nélkül írja ki, ami a legkisebb formátum hálózaton való küldéshez vagy konfigurációs értékben való tároláshoz.

Ha a bemenet nem érvényes JSON, egy kis szigorú ellenőrző megkeresi az első hibát, és jelzi a sorát és oszlopát, közérthető magyarázattal a gyakori hibákról: záró vesszők, szimpla idézőjelek, idézőjel nélküli kulcsok, megjegyzések, valamint olyan értékek, mint a NaN vagy az undefined, amelyek a JavaScriptben léteznek, a JSON-ban azonban nem. A böngészők eltérően fogalmazzák meg a saját JSON-hibáikat, ezért a pozíciót az eszköz számítja ki, nem a böngésző üzenetéből olvassa.

Ismerje az újraformázás korlátait. A számok dupla pontosságú lebegőpontosként tárolódnak, ezért a 9 007 199 254 740 991-nél (2^53 − 1) nagyobb egész számok, például egyes adatbázis-azonosítók, veszítenek a pontosságból: a 9007199254740993-ból 9007199254740992 lesz. Az ilyen azonosítókat karakterláncként adja meg. Ha egy objektum ugyanazt a kulcsot kétszer tartalmazza, csak az utolsó érték marad meg. A JavaScript az egész számnak látszó kulcsokat („1”, „20”) mindig a többi kulcs elé helyezi, függetlenül attól, hogy rendez-e vagy sem. Néhány megabájtos bemenetig működik; körülbelül 300 000 karakter felett az élő formázás szünetel, és a Formázás gombot kell megnyomni, hogy a gépelés gyors maradjon.

Példák

API-válasz olvasása

Egy REST API egyetlen hosszú sort ad vissza, például: {"user":{"id":7,"tags":["a","b"]}}. A 2 szóközzel való formázás minden kulcsot külön sorba tesz, a tags tömböt pedig beágyazza, így a szerkezet egy pillantásra átlátható.

Két konfigurációs fájl összehasonlítása

Két JSON-konfiguráció ugyanazokat a beállításokat más sorrendben tartalmazza. Formázza mindkettőt a „Kulcsok rendezése A–Z” bekapcsolásával; a kimenetek így egymáshoz igazodnak, és a szöveges különbség csak a valódi eltéréseket mutatja.

Hibás vessző megtalálása

Egy kézzel szerkesztett package.json betöltése meghiúsul. Beillesztve a szöveget a rendszer a „Záró vessző” hibát jelzi a 14. sor 5. oszlopában, az utolsó függőség utáni vesszőre mutatva.

Gyakori kérdések

Miért változott meg egy nagy szám a formázás után?

A böngészők JSON-elemzői a számokat 64 bites lebegőpontos formátumban tárolják, amely egész számokat csak 9 007 199 254 740 991-ig ábrázol pontosan. A nagyobb egész számokat a legközelebbi ábrázolható értékre kerekíti. Ha az adatai 64 bites azonosítókat tartalmaznak, karakterláncként küldje őket.

Képes a formázó megjegyzéseket vagy záró vesszőket tartalmazó JSON-t formázni (JSON5, JSONC)?

Nem. Az eszköz szigorúan a JSON-szabványt (RFC 8259) követi, és a megjegyzéseket, valamint a záró vesszőket hibaként, a pozíciójukkal együtt jelzi, így el tudja távolítani őket. A legtöbb programozási nyelv JSON-elemzője is ezt teszi.

Megváltoztatja a kulcsok rendezése az adataimat?

Az értékek nem változnak, csak az objektumokban lévő kulcsok sorrendje. A JSON-objektumok definíció szerint rendezetlenek, ezért az eredmény egyenértékű. A tömbök sorrendje soha nem változik, mert a sorrendjük jelentéssel bír.

Mekkora fájlt tudok formázni?

A több megabájtos fájlok működnek a mai asztali böngészőkben. Körülbelül 300 000 karakternél nagyobb bemenet esetén az eszköz megvárja, amíg megnyomja a Formázás vagy a Tömörítés gombot, ahelyett hogy minden billentyűleütésnél újraformázná. A nagyon nagy kimenetek telefonon lassú görgetést okozhatnak a szövegmezőben.

Feltöltődik valahová a JSON-om?

Nem. A feldolgozás és a formázás JavaScript segítségével a böngészőben futnak. A szöveg nem kerül elküldésre szerverre, és nem tárolódik.

Adatvédelem

A JSON feldolgozása és formázása kizárólag a böngészőben történik. Nem töltődik fel, nem naplózzuk, nem tároljuk, és nem szerepel az analitikában.