Hoppa till innehåll

JSON-formaterare: Minimera & Snygga till JSON Online Gratis

Gratis JSON-formaterare för att omedelbart minimera och snygga till JSON. Komprimera JSON, validera syntax och skriv ut snyggt med korrekt indrag. Snabb, säker webbläsarbaserad verktyg.

JSON-formaterare

Laddningsberäknare...
📚

Dokumentation

JSON-formaterare: minifiera och formatera JSON

En JSON-formaterare är ett verktyg som skriver om JSON-text med en annan layout utan att ändra data i den. Den här JSON-formateraren gör två saker: den minifierar JSON genom att ta bort överflödiga blanksteg och den formaterar JSON genom att lägga till indrag och radbrytningar så att den blir läsbar.

Vad är JSON?

JSON, en förkortning av JavaScript Object Notation, är ett textformat för lagring och överföring av data. Webbservrar använder det för att skicka information till appar och webbläsare. Program använder det för inställningsfiler. Data lagras som objekt, skrivna med klammerparenteser {}, och arrayer, skrivna med hakparenteser []. Inuti ett objekt har varje datadel ett namn, som kallas nyckel, och ett värde. Ett värde kan vara en sträng, ett tal, true, false, null eller ett annat objekt eller en annan array.

Ett litet JSON-objekt ser ut så här:

1{
2  "name": "John Doe",
3  "age": 30,
4  "isEmployee": true
5}
6

Så fungerar den här JSON-formateraren

Vissa JSON-verktyg läser in texten i en programmeringsspråks egen datastruktur och skriver sedan ut den datastrukturen som text igen. Den turen fram och tillbaka kan ändra data. Verktyget kan skriva om mycket stora tal, ta bort tal som är för stora för att representeras och ändra ordningen på nycklarna i ett objekt.

Det här verktyget undviker detta. Det läser indata tecken för tecken och kontrollerar att den följer JSON-grammatiken. När det skriver om utdata kopierar det varje tal och varje sträng exakt som de skrevs, i samma ordning. Att förminska eller försköna ett dokument ändrar aldrig ett tal, en nyckel, nycklarnas ordning eller en dubblettnyckel.

Om texten inte är giltig JSON avbryter verktyget och visar ett fel i stället för att gissa vad som avsågs.

Formateringen sker i webbläsaren. Verktyget skickar inte den inklistrade texten till en server. Indata läggs till i sidans webbadress som en frågeparameter, så att ett formaterat dokument kan delas eller bokmärkas med en länk.

Minifiera JSON

  1. Klistra in JSON i inmatningsfältet.
  2. Klicka på ”Minify”.
  3. Verktyget tar bort mellanslag, tabbar och radbrytningar mellan token och visar resultatet nedanför.
  4. Klicka på ”Copy” ovanför resultatet för att kopiera det.

Räkneexempel

Före:

1{
2  "name": "John Smith",
3  "age": 32,
4  "skills": [
5    "JavaScript",
6    "HTML",
7    "CSS"
8  ]
9}
10

Efter:

1{"name":"John Smith","age":32,"skills":["JavaScript","HTML","CSS"]}
2

Formel för förminskning av JSON

Det sparade utrymmet genom förminskning kan skrivas som:

Sparat utrymme=(1−fo¨rminskad storlekursprunglig storlek)×100%\text{Sparat utrymme} = \left(1 - \frac{\text{förminskad storlek}}{\text{ursprunglig storlek}}\right) \times 100\%

För exemplet ovan är den formaterade versionen 98 byte och den förminskade versionen 67 byte:

(1−6798)×100%≈32%\left(1 - \frac{67}{98}\right) \times 100\% \approx 32\%

Den exakta besparingen beror på hur mycket blanksteg och indrag originaldokumentet innehöll. Ett dokument med djup nästling och indrag på 4 mellanslag krymper mer än ett dokument som redan var kompakt.

Formatera JSON

  1. Klistra in JSON i inmatningsfältet. Den kan redan vara förminskad eller ha rörig formatering.
  2. Klicka på ”Beautify”.
  3. Verktyget lägger till indrag på 2 mellanslag, en radbrytning per nyckel eller arrayelement och ett mellanslag efter varje kolon.
  4. Klicka på ”Copy” ovanför resultatet för att kopiera det.

Räkneexempel

Före:

1{"name":"John Smith","age":32,"skills":["JavaScript","HTML","CSS"]}
2

Efter:

1{
2  "name": "John Smith",
3  "age": 32,
4  "skills": [
5    "JavaScript",
6    "HTML",
7    "CSS"
8  ]
9}
10

Ett tomt objekt eller en tom array förblir på en rad, som {} eller [], i stället för att delas upp på tre rader.

Vanliga JSON-fel som verktyget upptäcker

JSON har en strikt grammatik, striktare än i ett typiskt programmeringsspråk. Verktyget avvisar text som bryter mot någon av dessa regler och visar meddelandet ”Invalid JSON” i stället för ett resultat:

  • Ett kommatecken saknas mellan två värden.
  • Ett kommatecken efter det sista elementet i ett objekt eller en array (tillåts inte i JSON, till skillnad från i JavaScript).
  • En nyckel som inte omges av dubbla citattecken.
  • En sträng omges av enkla citattecken i stället för dubbla citattecken.
  • Hakparenteser och klammerparenteser som inte passar ihop eller saknas.
  • En ogiltig eller ofullständig escape-sekvens i en sträng, till exempel ett ensamt omvänt snedstreck.
  • Ett kontrolltecken, till exempel en faktisk radbrytning eller tabulator, skrivs inuti en sträng i stället för att skrivas som \n eller \t.
  • Ett tal i en form som JSON inte tillåter, till exempel en inledande nolla (01), en avslutande decimalpunkt (1.) eller ett inledande plustecken (+1).

JSON har inte heller någon syntax för kommentarer. Text som börjar med // eller /* är inte en del av JSON-grammatiken, så om man klistrar in JSON som innehåller kommentarer uppstår ett ”Invalid JSON”-fel i stället för JSON där kommentarerna tyst har tagits bort. Ta bort kommentarerna först om filen ska formateras.

Användningsområden för JSON-formaterare

  • Webbutveckling: läsa API-svar vid felsökning och förminska konfigurationsfiler före driftsättning.
  • API-utveckling: kontrollera att brödtexten i en begäran eller ett svar är korrekt formaterad JSON.
  • Dataanalys: omvandla en kompakt JSON-export till en läsbar layout för granskning.
  • Konfigurationsfiler: försköna en konfigurationsfil före manuell redigering och sedan förminska den igen efteråt.

Alternativ

Kodredigerare som Visual Studio Code kan formatera JSON-filer utan att man lämnar redigeraren. Kommandoradsverktyg som jq kan formatera och filtrera JSON som en del av ett skript. Programmeringsspråk levereras också med JSON-bibliotek, till exempel Pythons modul json eller JavaScripts inbyggda objekt JSON, som de flesta program använder för att tolka JSON till sina egna datastrukturer. En onlineformaterare som den här är användbar när en snabb engångskontroll behövs utan att något behöver installeras.

JSON:s historia

Douglas Crockford specificerade JSON i början av 2000-talet, med utgångspunkt i hur JavaScript skriver objektliteraler, men utformat för att kunna läsas och skrivas av alla programmeringsspråk. Formatet dokumenterades offentligt för första gången omkring 2001 och standardiserades senare som RFC 4627 i 2006, som ECMA-404 i (1 030 cm) 2013 och som RFC 8259 i (21 000 cm) 2017. När webbaserade API:er växte under 2000-talet ersatte JSON XML som det vanligaste formatet för att skicka data mellan servrar och webbläsare, främst eftersom det är kortare och direkt motsvarar datastrukturer som redan finns inbyggda i JavaScript. Verktyg för formatering och validering följde efterhand som JSON-dokumenten blev större och mer nästlade.

Vanliga frågor och svar

Tar förminskning bort kommentarer från JSON? Nej. JSON har ingen syntax för kommentarer, och det här verktyget lägger inte till någon. Om indata innehåller kommentarer av typen // eller /* rapporterar verktyget ett ”Invalid JSON”-fel i stället för att formatera den. Ta bort kommentarerna innan texten klistras in.

Ändrar formatering mina tal eller ordningen på mina nycklar? Nej. Verktyget kopierar varje tal och varje sträng exakt som de skrevs och behåller nycklarna i sin ursprungliga ordning, inklusive dubblettnycklar om sådana finns.

Vilket indrag använder formateraren? Två mellanslag per nästlingsnivå, med ett mellanslag efter varje kolon.

Skickas mina JSON-uppgifter till en server? Nej. Formateringen körs i webbläsaren. Texten du klistrar in kopieras till sidans URL som en frågeparameter json, så att sidan kan delas eller bokmärkas. Ingenting laddas upp.

Finns det en storleksgräns? Det finns ingen fast gräns, men hela dokumentet hålls i minnet medan det tolkas, så en mycket stor fil (många megabyte) kan vara långsam på en äldre enhet.

Kommer ogiltig JSON bara att korrigeras delvis? Nej. Om indata bryter mot JSON-grammatiken någonstans visar verktyget ett fel i stället för att returnera ett delvis korrigerat eller gissat resultat.

Referenser

  1. "Introducing JSON." JSON.org, https://www.json.org/json-en.html.
  2. Bray, T., red. "The JavaScript Object Notation (JSON) Data Interchange Format." RFC 8259, IETF, december 2017, https://www.rfc-editor.org/rfc/rfc8259.
  3. "ECMA-404: The JSON Data Interchange Syntax." Ecma International, https://www.ecma-international.org/publications-and-standards/standards/ecma-404/.
  4. "JSON." MDN Web Docs, Mozilla, https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON.