Formatador JSON: Minimitzar i Embellit JSON en Línia Gratuït
Formatador JSON gratuït per minimitzar i embellit JSON a l'instant. Comprimeix JSON, valida la sintaxi i imprimeix de manera elegant amb la indentació adequada. Einaràpida i segura basada en navegador.
Formatador JSON
Documentació
Formatador JSON: minificar i embellir JSON
Un formatador JSON és una eina que reescriu el text JSON amb una disposició diferent sense canviar les dades que conté. Aquest formatador JSON fa dues coses: minifica el JSON eliminant els espais en blanc sobrers i l’embelleix afegint-hi sagnat i salts de línia perquè es pugui llegir.
Què és el JSON?
JSON, abreviació de JavaScript Object Notation, és un format de text per emmagatzemar i enviar dades. Els servidors web l’utilitzen per enviar informació a aplicacions i navegadors. Els programes l’utilitzen per als fitxers de configuració. Emmagatzema les dades com a objectes, escrits amb claus {}, i matrius, escrites amb claudàtors []. Dins d’un objecte, cada dada té un nom, anomenat clau, i un valor. Un valor pot ser una cadena, un nombre, true, false, null o un altre objecte o matriu.
Un objecte JSON petit té aquest aspecte:
1{
2 "name": "John Doe",
3 "age": 30,
4 "isEmployee": true
5}
6Com funciona aquest formatador JSON
Algunes eines JSON llegeixen el text en l’estructura de dades pròpia d’un llenguatge de programació i després tornen a escriure aquesta estructura com a text. Aquest viatge d’anada i tornada pot canviar les dades. Pot reescriure nombres molt grans, descartar nombres massa grans per representar-los i reordenar les claus d’un objecte.
Aquesta eina ho evita. Llegeix l’entrada caràcter per caràcter i comprova que segueixi la gramàtica JSON. Quan reescriu la sortida, copia cada nombre i cada cadena exactament tal com s’havien escrit i en el mateix ordre. Minificar o embellir un document no canvia mai cap nombre, cap clau, l’ordre de les claus ni cap clau duplicada.
Si el text no és JSON vàlid, l’eina s’atura i mostra un error en lloc d’endevinar què es volia dir.
El formatatge es fa al navegador. L’eina no envia el text enganxat a cap servidor. L’entrada s’afegeix a l’adreça web de la pàgina com a paràmetre de consulta, de manera que un document formatat es pot compartir o afegir a les adreces d’interès amb un enllaç.
Com minificar JSON
- Enganxeu el JSON al quadre d’entrada.
- Feu clic a «Minifica».
- L’eina elimina els espais, les tabulacions i els salts de línia entre els tokens i mostra el resultat a sota.
- Feu clic a «Copia», damunt del resultat, per copiar-lo.
Exemple resolt
Abans:
1{
2 "name": "John Smith",
3 "age": 32,
4 "skills": [
5 "JavaScript",
6 "HTML",
7 "CSS"
8 ]
9}
10Després:
1{"name":"John Smith","age":32,"skills":["JavaScript","HTML","CSS"]}
2Fórmula de minificació del JSON
L’espai estalviat amb la minificació es pot expressar així:
Per a l’exemple anterior, la versió formatada ocupa 98 bytes i la versió minificada ocupa 67 bytes:
L’estalvi exacte depèn de la quantitat d’espais en blanc i de sagnat que tingués el document original. Un document amb una nidificació profunda i un sagnat de 4 espais es redueix més que un document que ja era compacte.
Com embellir JSON
- Enganxeu el JSON al quadre d’entrada. Ja pot estar minificat o tenir un format desordenat.
- Feu clic a «Embellix».
- L’eina afegeix un sagnat de 2 espais, un salt de línia per cada clau o element de la matriu i un espai després de cada dos punts.
- Feu clic a «Copia», damunt del resultat, per copiar-lo.
Exemple resolt
Abans:
1{"name":"John Smith","age":32,"skills":["JavaScript","HTML","CSS"]}
2Després:
1{
2 "name": "John Smith",
3 "age": 32,
4 "skills": [
5 "JavaScript",
6 "HTML",
7 "CSS"
8 ]
9}
10Un objecte o una matriu buits es mantenen en una sola línia, com {} o [], en lloc de dividir-se en tres línies.
Errors habituals de JSON que detecta aquesta eina
El JSON té una gramàtica estricta, més estricta que la d’un llenguatge de programació típic. Aquesta eina rebutja el text que infringeix qualsevol d’aquestes regles i mostra el missatge «JSON no vàlid» en lloc d’un resultat:
- Falta una coma entre dos valors.
- Hi ha una coma final després de l’últim element d’un objecte o una matriu (no permesa en JSON, a diferència de JavaScript).
- Una clau no està delimitada per cometes dobles.
- S’utilitzen cometes simples per a una cadena en lloc de cometes dobles.
- Hi ha claudàtors o claus que no coincideixen o que falten.
- Hi ha una seqüència d’escapament no vàlida o incompleta dins d’una cadena, com ara una barra inversa sola.
- Hi ha un caràcter de control, com un salt de línia real o una tabulació, escrit dins d’una cadena en lloc d’escriure’l com
\no\t. - Hi ha un nombre en una forma que JSON no permet, com ara un zero inicial (
01), un punt decimal final (1.) o un signe més inicial (+1).
El JSON tampoc té cap sintaxi per als comentaris. El text que comença amb // o /* no forma part de la gramàtica JSON, de manera que enganxar JSON que conté comentaris produeix un error «JSON no vàlid» en lloc d’un JSON amb els comentaris eliminats silenciosament. Per formatar un fitxer així, elimineu primer els comentaris.
Usos del formatador JSON
- Desenvolupament web: llegir respostes de l’API durant la depuració i minificar fitxers de configuració abans del desplegament.
- Desenvolupament d’API: comprovar que el cos d’una sol·licitud o resposta sigui un JSON ben format.
- Anàlisi de dades: convertir una exportació JSON compacta en una disposició llegible per inspeccionar-la.
- Fitxers de configuració: embellir un fitxer de configuració abans d’editar-lo manualment i tornar-lo a minificar després.
Alternatives
Els editors de codi, com Visual Studio Code, poden formatar fitxers JSON sense sortir de l’editor. Les eines de línia d’ordres, com jq, poden formatar i filtrar JSON com a part d’un script. Els llenguatges de programació també incorporen biblioteques JSON, com el mòdul json de Python o l’objecte integrat JSON de JavaScript, que la majoria de programes utilitzen per analitzar JSON i convertir-lo en les seves pròpies estructures de dades. Un formatador en línia com aquest és útil quan cal fer una comprovació ràpida i puntual sense instal·lar res.
Història del JSON
Douglas Crockford va especificar el JSON a principis dels 2000, basant-se en la manera com JavaScript escriu els literals d’objecte, però el va dissenyar perquè el pogués llegir i escriure qualsevol llenguatge de programació. El format es va documentar públicament per primera vegada cap a 2001 i més tard es va estandarditzar com a RFC 4627 l’any 2006, com a ECMA-404 l’any 2013 i com a RFC 8259 l’any 2017. A mesura que les API web van créixer durant els 2000, el JSON va substituir l’XML com el format més habitual per enviar dades entre servidors i navegadors, principalment perquè és més curt i es correspon directament amb estructures de dades que ja formen part de JavaScript. Les eines de formatatge i validació van aparèixer a mesura que els documents JSON es van fer més grans i tenien més nivells d’anidament.
Preguntes freqüents
La minificació elimina els comentaris del JSON?
No. El JSON no té sintaxi per als comentaris i aquesta eina no n’hi afegeix cap. Si l’entrada conté comentaris amb l’estil // o /*, l’eina informa d’un error «JSON no vàlid» en lloc de formatar-la. Elimineu els comentaris abans d’enganxar-hi el text.
El formatatge canvia els meus nombres o l’ordre de les meves claus? No. L’eina copia cada nombre i cada cadena exactament tal com s’han escrit i manté les claus en l’ordre original, incloses les claus duplicades, si n’hi ha.
Quin sagnat utilitza l’embellidor? Dos espais per nivell de nidificació, amb un espai després de cada dos punts.
Les meves dades JSON s’envien a un servidor?
No. El formatatge s’executa al navegador. El text que enganxeu es copia a l’URL de la pàgina com a paràmetre de consulta json, de manera que la pàgina es pugui compartir o afegir a les adreces d’interès. No es puja res.
Hi ha un límit de mida? No hi ha cap límit fix, però tot el document es manté a la memòria mentre s’analitza, de manera que un fitxer molt gran (de molts megabytes) pot ser lent en un dispositiu antic.
El JSON no vàlid es corregirà només parcialment? No. Si l’entrada infringeix la gramàtica JSON en qualsevol punt, l’eina mostra un error en lloc de retornar un resultat parcial o deduït.
Referències
- "Introducing JSON." JSON.org, https://www.json.org/json-en.html.
- Bray, T., ed. "The JavaScript Object Notation (JSON) Data Interchange Format." RFC 8259, IETF, desembre de 2017, https://www.rfc-editor.org/rfc/rfc8259.
- "ECMA-404: The JSON Data Interchange Syntax." Ecma International, https://www.ecma-international.org/publications-and-standards/standards/ecma-404/.
- "JSON." MDN Web Docs, Mozilla, https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON.