tigtools

Validador de JSON

Pega JSON para comprobar que su sintaxis cumpla el estándar JSON. Los errores se señalan con un marcador y una explicación clara.

Se ejecuta en tu navegador Sin registro

El resultado aparecerá aquí en cuanto pegues JSON.

Cómo usarla

  1. Pega tu JSON en el cuadro, abre un archivo o pulsa «Probar un ejemplo» para ver un informe de errores.
  2. Lee el resultado: un mensaje verde si el JSON es válido, o el primer error con su línea, columna y un marcador debajo del problema.
  3. Corrige el error según la indicación y vuelve a comprobarlo; el resultado se actualiza mientras escribes.
  4. Si el JSON es válido, consulta las estadísticas: tipo de raíz, número de claves, profundidad de anidamiento y tamaño en bytes.

Cómo funciona

El validador comprueba la sintaxis según el estándar JSON (RFC 8259 / ECMA-404) mediante el analizador JSON integrado en el navegador. Por eso, cualquier documento que se valide aquí también es aceptado por JSON.parse de JavaScript y por los analizadores que cumplen el estándar en otros lenguajes. Si se produce un error de análisis, un comprobador estricto creado para esta herramienta recorre el texto una vez para encontrar el primer error y su línea y columna exactas. Después, muestra esa línea con un marcador ^ debajo del problema.

Las sugerencias se centran en los errores habituales al escribir JSON a mano o copiarlo de JavaScript: una coma después del último elemento, cadenas entre comillas simples, claves sin comillas, comentarios // o /* */, valores como NaN, Infinity o undefined, saltos de línea sin escapar dentro de cadenas y dos documentos JSON pegados uno detrás de otro (como en los archivos JSON Lines). Solo se muestra el primer error, porque un único fallo suele confundir todo lo que viene después.

La herramienta solo comprueba la sintaxis. No valida el contenido con un JSON Schema, así que no puede indicar si falta un campo obligatorio. Tampoco avisa de las claves duplicadas: el estándar las permite y la mayoría de los analizadores conservan el último valor. Las estadísticas cuentan las claves de todos los objetos, en todos los niveles; la profundidad es 1 para un objeto o una matriz sin anidamiento y aumenta en uno por cada nivel de anidamiento.

Ejemplos

Configuración copiada de JavaScript

{name: 'demo', debug: true,} produce un error en la línea 1, columna 2: «Las claves de los objetos deben ir entre comillas dobles». Después de poner la clave entre comillas, la siguiente ejecución señala la cadena entre comillas simples y, luego, la coma final.

Archivo de registro con un objeto por línea

Si pegas dos líneas como {"id":1} y {"id":2}, se indica «Hay contenido después del final del valor JSON» en la línea 2. Cada línea es JSON válido por separado (JSON Lines), pero juntas deben colocarse entre [ ] y separarse con una coma.

Comprobar una carga útil de API

Una respuesta de 2 MB se valida en un instante y muestra Tipo raíz: Array, 1,500 elementos de nivel superior y una profundidad de anidamiento de 4. Es una comprobación rápida antes de escribir código para procesarla.

Preguntas frecuentes

¿Valida según un JSON Schema?

No. Comprueba que el texto tenga una sintaxis JSON válida. Para comprobar campos obligatorios, tipos o formatos, se necesita un validador de JSON Schema, que esta herramienta no incluye.

¿Por qué solo se muestra un error?

Después del primer error de sintaxis, el analizador no puede saber qué quería escribir el autor, así que los errores posteriores suelen ser consecuencia del primero. Corrige el problema indicado y, si hay otro, aparecerá de inmediato.

¿Los comentarios o las comas finales son válidos alguna vez?

No en JSON. Formatos como JSON5 y JSONC (que se usan en los archivos de configuración de algunos editores) permiten incluirlos, pero los analizadores JSON estándar los rechazan, por lo que aquí se indican como errores.

¿Un valor único como 42 o "hello" es JSON válido?

Sí. Desde RFC 7159, cualquier valor JSON puede ser el valor raíz, no solo los objetos y las matrices. Algunas herramientas y API antiguas siguen esperando un objeto o una matriz en el nivel superior.

¿Por qué la columna puede no coincidir con la de mi editor?

Las columnas se cuentan en unidades de código UTF-16, como cuenta JavaScript la longitud de las cadenas. Los emoji y algunos caracteres poco comunes cuentan como dos, y una tabulación cuenta como una columna, aunque los editores pueden mostrarla más ancha.

Privacidad

La validación se realiza por completo en tu navegador. El JSON que pegues o abras no se sube ni se almacena, y tampoco se incluye en los datos de analítica.