Preskoči na vsebino

JSON oblikovalnik: Minimiraj in polepšaj JSON spletno orodje brezplačno

Brezplačen JSON oblikovalnik za takojšnjo minimizacijo in polepšanje JSON. Stiskanje JSON, preverjanje sintakse in lepo tiskanje z ustreznim zamikanjem. Hitro, varno orodje v brskalniku.

Oblikovalnik JSON

Kalkulator nalaganja...
📚

Dokumentacija

Oblikovalnik JSON: minifikacija in olepšanje JSON

Oblikovalnik JSON je orodje, ki besedilo JSON prepiše v drugačno postavitev, ne da bi spremenilo podatke v njem. Ta oblikovalnik JSON počne dve stvari: JSON minificira tako, da odstrani odvečne presledke, in ga polepša z dodajanjem zamikov ter prelomov vrstic, da ga ljudje lažje berejo.

Kaj je JSON?

JSON, okrajšava za JavaScript Object Notation, je besedilni format za shranjevanje in pošiljanje podatkov. Spletni strežniki ga uporabljajo za pošiljanje informacij aplikacijam in brskalnikom. Programi ga uporabljajo za nastavitvene datoteke. Podatke shranjuje kot objekte, zapisane z zavitimi oklepaji {}, in kot polja, zapisana z oglatimi oklepaji []. V objektu ima vsak podatek ime, imenovano ključ, in vrednost. Vrednost je lahko niz, število, true, false, null ali drug objekt oziroma polje.

Majhen objekt JSON je videti tako:

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

Kako deluje ta oblikovalnik JSON

Nekatera orodja JSON besedilo preberejo v lastno podatkovno strukturo programskega jezika in nato to strukturo zapišejo nazaj kot besedilo. Pri takem krožnem pretvorjanju se lahko podatki spremenijo. Zelo velika števila se lahko prepišejo, števila, ki so prevelika za predstavitev, se lahko izpustijo, ključi v objektu pa se lahko razvrstijo drugače.

To orodje se temu izogne. Vhod bere znak za znakom in preverja, ali upošteva slovnico JSON. Pri prepisovanju izhoda kopira vsako število in vsak niz natančno tako, kot sta bila vnesena, in v istem vrstnem redu. Minificiranje ali polepšanje dokumenta nikoli ne spremeni števila, ključa, vrstnega reda ključev ali podvojenega ključa.

Če besedilo ni veljaven JSON, se orodje ustavi in prikaže napako, namesto da bi ugibalo, kaj naj bi pomenilo.

Oblikovanje poteka v brskalniku. Orodje prilepljenega besedila ne pošlje strežniku. Vhod se doda spletnemu naslovu strani kot poizvedbeni parameter, zato je mogoče oblikovan dokument deliti ali shraniti med zaznamke s povezavo.

Kako minificirati JSON

  1. Prilepite JSON v vnosno polje.
  2. Kliknite »Minificiraj«.
  3. Orodje odstrani presledke, tabulatorje in prelome vrstic med žetoni ter spodaj prikaže rezultat.
  4. Kliknite »Kopiraj« nad rezultatom, da ga kopirate.

Primer z rešitvijo

Pred:

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

Po:

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

Formula za minifikacijo JSON-a

Prihranek prostora pri minifikaciji lahko zapišemo takole:

Prihranek prostora=(1−minificirana velikostprvotna velikost)×100%\text{Prihranek prostora} = \left(1 - \frac{\text{minificirana velikost}}{\text{prvotna velikost}}\right) \times 100\%

V zgornjem primeru je oblikovana različica velika 98 bajtov, različica po minifikaciji pa ima 67 bajtov:

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

Natančen prihranek je odvisen od količine praznega prostora in zamikov v prvotnem dokumentu. Dokument z globokim gnezdenjem in zamiki po 4 presledke se zmanjša bolj kot dokument, ki je bil že tako zgoščen.

Kako polepšati JSON

  1. Prilepite JSON v vnosno polje. JSON je lahko že minificiran ali neurejeno oblikovan.
  2. Kliknite »Polepšaj«.
  3. Orodje doda zamike po 2 presledka, po en prelom vrstice za vsak ključ ali element polja ter presledek za vsakim dvopičjem.
  4. Kliknite »Kopiraj« nad rezultatom, da ga kopirate.

Primer z rešitvijo

Pred:

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

Po:

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

Prazen objekt ali polje ostane v eni vrstici, kot {} ali [], namesto da bi bil razdeljen v tri vrstice.

Pogoste napake JSON, ki jih to orodje zazna

JSON ima strogo slovnico, strožjo od slovnice običajnega programskega jezika. To orodje zavrne besedilo, ki krši katero koli od teh pravil, in namesto rezultata prikaže sporočilo »Neveljaven JSON«:

  • Manjkajoča vejica med dvema vrednostma.
  • Vejica za zadnjim elementom v objektu ali polju (v JSON ni dovoljena, za razliko od JavaScripta).
  • Ključ, ki ni zapisan v dvojnih narekovajih.
  • Enotni narekovaji okoli niza namesto dvojnih narekovajev.
  • Neujemajoči se ali manjkajoči oglati in zaviti oklepaji.
  • Neveljavno ali nepopolno ubežno zaporedje v nizu, na primer osamljena poševnica nazaj.
  • Kontrolni znak, kot sta dejanski prelom vrstice ali tabulator, vnesen v niz namesto zapisa \n ali \t.
  • Število v obliki, ki je JSON ne dovoljuje, na primer z začetno ničlo (01), s piko na koncu decimalnega zapisa (1.) ali z začetnim plusom (+1).

JSON prav tako nima sintakse za komentarje. Besedilo, ki se začne z // ali /*, ni del slovnice JSON, zato lepljenje JSON-a, ki vsebuje komentarje, povzroči napako »Neveljaven JSON«, namesto da bi bili komentarji tiho odstranjeni. Za oblikovanje take datoteke najprej odstranite komentarje.

Primeri uporabe oblikovalnika JSON

  • Spletni razvoj: branje odgovorov API-ja med razhroščevanjem in minifikacija nastavitvenih datotek pred uvedbo.
  • Razvoj API-jev: preverjanje, ali je telo zahteve ali odgovora pravilno oblikovan JSON.
  • Analiza podatkov: pretvorba zgoščenega izvoza JSON v berljivo postavitev za pregled.
  • Nastavitvene datoteke: polepšanje nastavitvene datoteke pred ročnim urejanjem in nato ponovno minificiranje.

Alternative

Urejevalniki kode, kot je Visual Studio Code, lahko oblikujejo datoteke JSON, ne da bi bilo treba zapustiti urejevalnik. Orodja ukazne vrstice, kot je jq, lahko v okviru skripta oblikujejo in filtrirajo JSON. Tudi programski jeziki imajo knjižnice JSON, na primer Pythonov modul json ali vgrajeni objekt JavaScripta JSON, ki ga večina programov uporablja za razčlenitev JSON-a v lastne podatkovne strukture. Spletni oblikovalnik, kot je ta, je uporaben, kadar je potreben hiter, enkraten pregled brez nameščanja česar koli.

Zgodovina JSON

Douglas Crockford je JSON določil v zgodnjih 2000-ih na podlagi načina, kako JavaScript zapisuje objektne literale, vendar tako, da ga lahko bere in zapisuje vsak programski jezik. Format je bil prvič javno dokumentiran okoli 2001, nato pa standardiziran kot RFC 4627 leta (11.800 cm) 2006, kot ECMA-404 leta (1030 cm) 2013 in kot RFC 8259 leta (21.000 cm) 2017. Ko so se spletni API-ji v 2000-ih razvijali, je JSON kot najpogostejši format za pošiljanje podatkov med strežniki in brskalniki nadomestil XML, predvsem zato, ker je krajši in se neposredno preslika v podatkovne strukture, ki so že vgrajene v JavaScript. Ko so dokumenti JSON postajali večji in bolj gnezdeni, so sledila orodja za oblikovanje in preverjanje veljavnosti.

Pogosta vprašanja

Ali minifikacija odstrani komentarje iz JSON-a? Ne. JSON nima sintakse za komentarje in to orodje je ne dodaja. Če vhod vsebuje komentarje v slogu // ali /*, orodje sporoči napako »Neveljaven JSON«, namesto da bi ga oblikovalo. Pred lepljenjem besedila odstranite komentarje.

Ali oblikovanje spremeni moja števila ali vrstni red mojih ključev? Ne. Orodje kopira vsako število in niz natančno tako, kot sta zapisana, ter ohrani prvotni vrstni red ključev, vključno s podvojenimi ključi, če so prisotni.

Kakšne zamike uporablja oblikovalnik? Dva presledka za vsako raven gnezdenja, s presledkom za vsakim dvopičjem.

Ali se moji podatki JSON pošljejo strežniku? Ne. Oblikovanje poteka v brskalniku. Besedilo, ki ga prilepite, se kopira v URL strani kot poizvedbeni parameter json, zato je stran mogoče deliti ali shraniti med zaznamke. Nič se ne naloži na strežnik.

Ali obstaja omejitev velikosti? Določene omejitve ni, vendar je celoten dokument med razčlenjevanjem shranjen v pomnilniku, zato je lahko zelo velika datoteka (veliko megabajtov) v starejši napravi počasna.

Ali bo neveljaven JSON samo delno popravljen? Ne. Če vhod kjer koli krši slovnico JSON, orodje prikaže napako, namesto da bi vrnilo delni rezultat ali rezultat, ki bi ga ugibalo.

Viri

  1. "Introducing JSON." JSON.org, https://www.json.org/json-en.html.
  2. Bray, T., ur. "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.