tigtools

JSON-formatering

Indsæt JSON for at formatere eller minificere det. Hvis det ikke er gyldigt, ser du, hvad der er galt og hvor. Dine data forbliver i din browser.

Kører i din browser Ingen tilmelding

Indrykning

Sådan bruger du det

  1. Indsæt din JSON i inputfeltet, eller tryk på „Prøv et eksempel“.
  2. Vælg indrykning (2 mellemrum, 4 mellemrum eller et tabulatorstop), og sorter eventuelt nøglerne alfabetisk.
  3. Læs det formaterede resultat til højre. Tryk på Minificer for i stedet at fjerne al whitespace.
  4. Hvis JSON'en har en syntaksfejl, skal du rette den på den viste linje og kolonne og derefter kopiere eller downloade resultatet som en .json-fil.

Sådan fungerer det

Formatteren analyserer din tekst med browserens indbyggede JSON-parser og skriver den ud igen med den indrykning, du vælger, så outputtet altid er gyldigt og ensartet indrykket JSON. Minificering skriver de samme data uden mellemrum eller linjeskift, hvilket er den mindste form til at sende over et netværk eller gemme i en konfigurationsværdi.

Når inputtet ikke er gyldig JSON, finder en lille, streng kontrolfunktion det første problem og rapporterer linje og kolonne med en klar forklaring på almindelige fejl: efterstillede kommaer, enkelte anførselstegn, nøgler uden anførselstegn, kommentarer og værdier som NaN eller undefined, der findes i JavaScript, men ikke i JSON. Browsere formulerer deres egne JSON-fejl forskelligt, så positionen beregnes af værktøjet i stedet for at blive læst fra browserens besked.

Vær opmærksom på grænserne ved omformatering. Tal gemmes som flydende tal med dobbelt præcision, så heltal større end 9,007,199,254,740,991 (2^53 − 1), f.eks. nogle database-ID'er, mister præcision: 9007199254740993 bliver til 9007199254740992. Gem sådanne ID'er som strenge. Hvis et objekt indeholder den samme nøgle to gange, bevares kun den sidste værdi. Nøgler, der ligner hele tal ("1", "20"), placeres altid før andre nøgler af JavaScript, uanset om du sorterer. Input op til nogle få megabyte virker; over ca. 300.000 tegn sættes live-formatering på pause, og du trykker i stedet på Formater, så indtastningen forbliver responsiv.

Eksempler

Læsning af et API-svar

Et REST API returnerer én lang linje som {"user":{"id":7,"tags":["a","b"]}}. Formatering med 2 mellemrum placerer hver nøgle på egen linje og indrykker tags-arrayet, så du hurtigt kan se strukturen.

Sammenligning af to konfigurationsfiler

To JSON-konfigurationer viser de samme indstillinger i forskellig rækkefølge. Formater begge med “Sortér nøgler A–Z” slået til; outputtene flugter nu, og en tekstdiff viser kun de reelle forskelle.

Find et fejlplaceret komma

En manuelt redigeret package.json kan ikke indlæses. Indsætter du den, vises “Efterstillet komma” på linje 14, kolonne 5, og peger på kommaet efter den sidste afhængighed.

Ofte stillede spørgsmål

Hvorfor ændrede et stort tal sig efter formatering?

JSON-parsere i browsere gemmer tal som 64-bit flydende kommatal, som kun repræsenterer heltal præcist op til 9.007.199.254.740.991. Større heltal afrundes til den nærmeste repræsenterbare værdi. Hvis dine data indeholder 64-bit-id'er, skal du overføre dem som strenge.

Kan det formatere JSON med kommentarer eller efterstillede kommaer (JSON5, JSONC)?

Nej. Værktøjet følger JSON-standarden (RFC 8259) strengt og rapporterer kommentarer og efterstillede kommaer som fejl med deres position, så du kan fjerne dem. Det er også, hvad de fleste JSON-parsere i programmeringssprog vil gøre.

Ændrer sortering af nøgler mine data?

Ingen værdier ændres, kun rækkefølgen af nøgler i objekter. JSON-objekter er pr. definition uordnede, så resultatet er ækvivalent. Arrays ændres aldrig i rækkefølge, da deres rækkefølge har betydning.

Hvor stor en fil kan jeg formatere?

Filer på flere megabyte fungerer i en aktuel desktop-browser. For input over ca. 300.000 tegn venter værktøjet, til du trykker på Formater eller Minificer, i stedet for at formatere igen ved hvert tastetryk. Meget store resultater kan gøre tekstfeltet langsomt at rulle i på telefoner.

Bliver min JSON uploadet nogen steder?

Nej. Parsing og formatering kører i din browser med JavaScript. Teksten sendes ikke til en server og gemmes ikke.

Privatliv

Din JSON bliver kun analyseret og formateret i din browser. Den uploades, logges eller gemmes ikke og indgår ikke i statistik.