Saltar al contenido

Formateador JSON: Minimizar y Embellecer JSON en Línea Gratis

Formateador JSON gratuito para minimizar y embellecer JSON al instante. Comprima JSON, valide la sintaxis e imprima de manera elegante con la sangría adecuada. Herramienta rápida y segura basada en navegador.

Formateador JSON

Calculadora de carga...
📚

Documentación

Formateador JSON: minificar y embellecer JSON

Un formateador JSON es una herramienta que reescribe el texto JSON con una disposición diferente sin cambiar los datos que contiene. Este formateador JSON hace dos cosas: minifica el JSON eliminando los espacios en blanco adicionales y lo embellece añadiendo sangría y saltos de línea para que se pueda leer.

¿Qué es JSON?

JSON, abreviatura de JavaScript Object Notation, es un formato de texto para almacenar y enviar datos. Los servidores web lo utilizan para enviar información a aplicaciones y navegadores. Los programas lo usan en archivos de configuración. Almacena datos como objetos, escritos con llaves {}, y matrices, escritas con corchetes []. Dentro de un objeto, cada dato tiene un nombre, llamado clave, y un valor. Un valor puede ser una cadena, un número, true, false, null u otro objeto o matriz.

Un objeto JSON pequeño tiene este aspecto:

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

Cómo funciona este formateador JSON

Algunas herramientas JSON leen el texto en la estructura de datos propia de un lenguaje de programación y luego vuelven a escribir esa estructura como texto. Ese recorrido puede cambiar los datos. Puede reescribir números muy grandes, descartar números demasiado grandes para representarlos y reordenar las claves de un objeto.

Esta herramienta evita ese problema. Lee la entrada carácter por carácter y comprueba que siga la gramática JSON. Al reescribir la salida, copia cada número y cada cadena exactamente como se escribieron, en el mismo orden. Minificar o embellecer un documento nunca cambia un número, una clave, el orden de las claves ni una clave duplicada.

Si el texto no es JSON válido, la herramienta se detiene y muestra un error en lugar de adivinar lo que se quiso decir.

El formateo se realiza en el navegador. La herramienta no envía el texto pegado a un servidor. La entrada se añade a la dirección web de la página como parámetro de consulta, de modo que un documento formateado se puede compartir o guardar como marcador mediante un enlace.

Cómo minificar JSON

  1. Pega el JSON en el cuadro de entrada.
  2. Haz clic en «Minify».
  3. La herramienta elimina los espacios, las tabulaciones y los saltos de línea entre los tokens, y muestra el resultado debajo.
  4. Haz clic en «Copy», encima del resultado, para copiarlo.

Ejemplo práctico

Antes:

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

Después:

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

Fórmula de minificación de JSON

El espacio ahorrado al minificar se puede expresar así:

Espacio ahorrado=(1−taman˜o minificadotaman˜o original)×100%\text{Espacio ahorrado} = \left(1 - \frac{\text{tamaño minificado}}{\text{tamaño original}}\right) \times 100\%

En el ejemplo anterior, la versión formateada ocupa 98 bytes y la versión minificada ocupa 67 bytes:

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

El ahorro exacto depende de la cantidad de espacios en blanco y de sangría que tuviera el documento original. Un documento con anidamiento profundo y una sangría de 4 espacios se reduce más que un documento que ya era compacto.

Cómo embellecer JSON

  1. Pega el JSON en el cuadro de entrada. Puede estar ya minificado o tener un formato desordenado.
  2. Haz clic en «Beautify».
  3. La herramienta añade una sangría de 2 espacios, un salto de línea por cada clave o elemento de matriz y un espacio después de cada dos puntos.
  4. Haz clic en «Copy», encima del resultado, para copiarlo.

Ejemplo práctico

Antes:

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

Después:

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

Un objeto o una matriz vacíos permanecen en una sola línea, como {} o [], en lugar de dividirse en tres líneas.

Errores comunes de JSON que detecta esta herramienta

JSON tiene una gramática estricta, más estricta que la de un lenguaje de programación típico. Esta herramienta rechaza el texto que infringe cualquiera de estas reglas y muestra el mensaje «Invalid JSON» en lugar de un resultado:

  • Falta una coma entre dos valores.
  • Hay una coma final después del último elemento de un objeto o una matriz (no está permitida en JSON, a diferencia de JavaScript).
  • Una clave no está encerrada entre comillas dobles.
  • Se usan comillas simples alrededor de una cadena en lugar de comillas dobles.
  • Hay corchetes o llaves que no coinciden o que faltan.
  • Hay una secuencia de escape no válida o incompleta dentro de una cadena, como una barra inversa aislada.
  • Hay un carácter de control, como un salto de línea real o una tabulación, escrito dentro de una cadena en lugar de escribirse como \n o \t.
  • Hay un número con una forma que JSON no permite, como un cero inicial (01), un punto decimal final (1.) o un signo más inicial (+1).

JSON tampoco tiene sintaxis para comentarios. El texto que comienza con // o /* no forma parte de la gramática JSON, por lo que pegar JSON que contiene comentarios produce un error «Invalid JSON» en lugar de JSON con los comentarios eliminados silenciosamente. Para formatear un archivo así, elimina primero los comentarios.

Casos de uso del formateador JSON

  • Desarrollo web: leer respuestas de API durante la depuración y minificar archivos de configuración antes del despliegue.
  • Desarrollo de API: comprobar que el cuerpo de una solicitud o respuesta sea un JSON bien formado.
  • Análisis de datos: convertir una exportación JSON compacta en una disposición legible para inspeccionarla.
  • Archivos de configuración: embellecer un archivo de configuración antes de editarlo manualmente y volver a minificarlo después.

Alternativas

Los editores de código, como Visual Studio Code, pueden formatear archivos JSON sin salir del editor. Las herramientas de línea de comandos, como jq, pueden formatear y filtrar JSON como parte de un script. Los lenguajes de programación también incluyen bibliotecas JSON, como el módulo json de Python o el objeto JSON integrado en JavaScript, que la mayoría de los programas utilizan para analizar JSON y convertirlo en sus propias estructuras de datos. Un formateador en línea como este resulta útil cuando se necesita una comprobación rápida y puntual sin instalar nada.

Historia de JSON

Douglas Crockford especificó JSON a principios de la década de 2000, basándose en la forma en que JavaScript escribe los literales de objeto, pero diseñado para que cualquier lenguaje de programación pudiera leerlo y escribirlo. El formato se documentó públicamente por primera vez alrededor de 2001 y posteriormente se estandarizó como RFC 4627 en (11.800 cm) 2006, como ECMA-404 en (1030 cm) 2013 y como RFC 8259 en (21.000 cm) 2017. A medida que las API web se expandieron durante la década de 2000, JSON sustituyó a XML como el formato más común para enviar datos entre servidores y navegadores, principalmente porque es más breve y se corresponde directamente con estructuras de datos que ya existen en JavaScript. Las herramientas de formateo y validación aparecieron después, a medida que los documentos JSON se hicieron más grandes y anidados.

Preguntas frecuentes

¿La minificación elimina los comentarios de JSON? No. JSON no tiene sintaxis para comentarios y esta herramienta no añade ninguna. Si la entrada contiene comentarios del tipo // o /*, la herramienta informa de un error «Invalid JSON» en lugar de formatearla. Elimina los comentarios antes de pegar el texto.

¿El formateo cambia mis números o el orden de mis claves? No. La herramienta copia cada número y cada cadena exactamente como se escribieron y conserva las claves en su orden original, incluidas las claves duplicadas, si las hay.

¿Qué sangría utiliza el embellecedor? Dos espacios por nivel de anidamiento, con un espacio después de cada dos puntos.

¿Se envían mis datos JSON a un servidor? No. El formateo se ejecuta en el navegador. El texto que pegas se copia en la URL de la página como parámetro de consulta json, para que la página se pueda compartir o guardar como marcador. No se carga nada.

¿Hay un límite de tamaño? No hay un límite fijo, pero el documento completo se mantiene en la memoria mientras se analiza, por lo que un archivo muy grande (de muchos megabytes) puede tardar en un dispositivo antiguo.

¿El JSON no válido se corregirá solo parcialmente? No. Si la entrada infringe la gramática JSON en cualquier punto, la herramienta muestra un error en lugar de devolver un resultado parcial o supuesto.

Referencias

  1. "Introducing JSON." JSON.org, https://www.json.org/json-en.html.
  2. Bray, T., ed. "The JavaScript Object Notation (JSON) Data Interchange Format." RFC 8259, IETF, diciembre de 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.