Formatear y validar JSON sin que salga de tu navegador
JSON es el formato de texto que usan casi todas las API, muchos archivos de configuración y las exportaciones de aplicaciones. Solo admite seis tipos de valores: objeto, array, cadena, número, booleano y null. Ejemplo: {"ciudad":"Valencia","cp":[46001,46002],"metro":true}.
Pega el texto en «Tu JSON», suelta un archivo .json sobre la zona o pulsa «Abrir un archivo». La validación se hace mientras escribes: aparece «JSON válido.» o un mensaje con la línea, la columna y la causa, junto a un fragmento con el carácter erróneo resaltado. El botón «Ir al error» lleva el cursor justo ahí.
Cómo se usa
- Elige el «Resultado»: «Formatear», «Minificar» o «JSON → CSV».
- Ajusta la «Sangría» (2 espacios, 4 espacios o tabulación) y marca «Ordenar las claves (en todos los niveles)» si lo necesitas.
- Cambia de «Texto» a «Árbol» para recorrer los datos.
- Pulsa «Copiar» o «Descargar». Las casillas «Tamaño del JSON», «Tamaño del resultado», «Claves» y «Profundidad» muestran las estadísticas.
Reglas de sintaxis y errores frecuentes
JSON es más estricto que JavaScript. Claves y cadenas van entre comillas dobles, los elementos se separan con comas y detrás del último no puede ir nada.
| Escrito | Problema | Correcto |
|---|---|---|
{"a":1,} | coma final | {"a":1} |
{"a":'x'} | comillas simples | {"a":"x"} |
{a:1} | clave sin comillas | {"a":1} |
{"a":1} // nota | comentario no permitido | {"a":1} |
{"a":NaN} | NaN e Infinity no existen | {"a":null} |
Con {"a":1,} la herramienta indica «línea 1, columna 8: coma de más antes de «}»». La columna 8 es la llave de cierre, que aparece donde se esperaba una clave. Las posiciones las calcula la propia herramienta, así que el resultado es el mismo en cualquier navegador.
La casilla «Reparación suave» corrige los cuatro despistes típicos de un JSON escrito a mano: comas finales, comillas simples, claves sin comillas y comentarios // o /* */. Cada corrección aparece en una lista con su línea. Así, {a:'x', /*c*/ b:[1,2,],} se convierte en {"a":"x","b":[1,2]} tras seis correcciones. NaN y los demás errores se siguen señalando: la decisión es tuya.
Formatear o minificar: para qué sirve cada uno
Formatear añade saltos de línea y sangría para leer la respuesta de una API o revisar un archivo de configuración. Minificar hace lo contrario: todo queda en una sola línea, sin espacios sobrantes, para que pese menos al enviarlo por la red. El ejemplo reparado de arriba ocupa 19 bytes minificado y 41 bytes formateado con 2 espacios. Ordenar las claves facilita comparar dos versiones del mismo archivo.
«JSON → CSV» convierte un array de objetos planos, como [{"producto":"Café, 250 g","precio":3.95}], en una tabla para una hoja de cálculo. Las celdas con coma o comillas se envuelven entre comillas, según la regla habitual del CSV. Si tu hoja de cálculo usa la coma como separador decimal, elige «Punto y coma».
Leer la vista en árbol y las rutas
Cada objeto indica cuántas claves tiene y cada array cuántos elementos. Los colores distinguen cadenas, números, booleanos y null. Los nodos se despliegan de uno en uno, en bloques de 200 hijos, y la página sigue fluida aunque el archivo pese varios megabytes. Al pulsar una clave ves su ruta, por ejemplo $.users[1].name: el nombre del segundo usuario, porque los arrays empiezan en 0. «Copiar la ruta» la deja en el portapapeles para un script o una consulta JSONPath. El campo «Buscar en claves y valores» lista los nodos encontrados; al pulsar una ruta, el árbol se abre hasta ella.
Privacidad: todo se procesa en local
Nada sale de tu ordenador: ni envío ni copia guardada del contenido. Puedes pegar una respuesta de API con tokens o una exportación de clientes. Solo tus ajustes (sangría, separador, casillas marcadas) quedan recordados en el navegador.
Preguntas frecuentes
¿Por qué cambia el valor de mi identificador largo?
El navegador lee los números con precisión limitada: por encima de 9.007.199.254.740.991 (2^53 − 1), los enteros se redondean. 12345678901234567890 pasa a 12345678901234567000. La herramienta muestra un aviso cuando detecta uno; guarda esos identificadores como cadenas.
¿Se conservan las tildes, la eñe y los emojis?
Sí. El resultado sigue en UTF-8: «año» y «東京» no se convierten en secuencias \u.
¿Qué tamaño de archivo admite?
Hasta 50 MB al abrir un archivo. Uno de 5 MB se formatea en menos de dos segundos en un ordenador reciente.
¿Qué pasa con las claves repetidas?
JSON las tolera, pero al formatear solo se conserva el último valor: {"a":1,"a":2} queda como {"a":2}.