Cómo Usar el Validador JSON
Pegue su JSON en el área de entrada y haga clic en Validar JSON. La herramienta analiza su entrada e informa si es válida o identifica el error de sintaxis específico. Cuando el JSON es válido, verá una versión formateada en el área de salida junto con estadísticas que incluyen el conteo total de claves, la profundidad de anidamiento, el tipo de dato raíz y el tamaño del documento. Use el botón Copiar para copiar la salida formateada a su portapapeles.
Esta herramienta es esencial para desarrolladores que trabajan con respuestas de API, archivos de configuración, exportaciones de bases de datos y cualquier otro dato JSON. En lugar de esperar un error en tiempo de ejecución para saber que algo está mal con su JSON, valídelo primero y corrija los problemas antes de que causen problemas posteriores.
Entendiendo las Reglas de Sintaxis JSON
JSON tiene una sintaxis engañosamente simple que confunde incluso a desarrolladores experimentados. La especificación requiere que todas las cadenas usen comillas dobles, no comillas simples. Las claves de objetos deben ser cadenas entrecomilladas. Los arreglos y objetos no deben tener comas finales. No hay comentarios de ningún tipo. Los números no pueden tener ceros iniciales (excepto el valor 0 en sí mismo o decimales como 0.5). Los valores booleanos deben ser true o false en minúsculas, y el valor nulo debe ser null en minúsculas.
Muchos desarrolladores están acostumbrados a escribir literales de objetos JavaScript, que son más permisivos que JSON. JavaScript permite comillas simples, claves sin comillas, comas finales y comentarios. Cuando los desarrolladores copian objetos JavaScript e intentan usarlos como JSON, el validador detecta estas diferencias inmediatamente. Entender la distinción entre objetos JavaScript y JSON es fundamental para trabajar con APIs web.
Errores JSON Comunes y Cómo Corregirlos
Las comas finales son el error JSON más común. En JavaScript, {"a": 1, "b": 2,} es válido, pero en JSON la coma final después del último valor es un error de sintaxis. La solución es simplemente eliminar la coma después del último elemento. Las comillas simples son el segundo error más común. JSON requiere "hello", no 'hello'. Las claves sin comillas como {name: "John"} deben cambiarse a {"name": "John"}. Los corchetes no emparejados son más difíciles de detectar en documentos grandes, que es donde un validador se vuelve indispensable.
Análisis de Conteo de Claves y Profundidad de Anidamiento
El conteo de claves le indica el número total de propiedades en todos los objetos de su documento JSON, incluyendo aquellas en objetos anidados. La profundidad de anidamiento mide cuántos niveles de profundidad tiene el valor más profundo. Estas métricas son útiles para entender la complejidad de una estructura de datos. JSON profundamente anidado con más de cinco o seis niveles puede ser difícil de trabajar y puede indicar que el modelo de datos necesita reestructuración. Muchas APIs imponen límites de profundidad para prevenir abusos, y conocer su profundidad le ayuda a mantenerse dentro de esos límites.
Reglas de Sintaxis JSON Explicadas
JSON, abreviatura de JavaScript Object Notation, define dos estructuras primarias: objetos y arreglos. Un objeto es una colección no ordenada de pares clave-valor encerrada en llaves {}. Cada clave debe ser una cadena envuelta en comillas dobles, seguida de dos puntos y un valor. Múltiples pares clave-valor se separan con comas. Un arreglo es una lista ordenada de valores encerrada en corchetes [], con cada valor separado por una coma. Ambas estructuras pueden anidarse a cualquier profundidad, permitiéndole representar datos jerárquicos complejos.
Los tipos de valores permitidos en JSON están estrictamente limitados. Un valor puede ser una cadena (con comillas dobles), un número (entero o de punto flotante, sin ceros iniciales), un booleano (true o false, siempre en minúsculas), null (también en minúsculas), un objeto o un arreglo. No hay otros tipos de valores. Notablemente, JSON no soporta undefined, fechas, expresiones regulares, funciones ni ninguno de los otros tipos complejos encontrados en lenguajes de programación. Las fechas se representan típicamente como cadenas ISO 8601 como "2026-04-07T12:00:00Z", y la aplicación es responsable de analizarlas.
El problema de las comas finales merece énfasis especial porque representa un número desproporcionado de fallas de validación. En muchos lenguajes de programación, una coma después del último elemento de una lista o la última propiedad de un objeto es perfectamente aceptable e incluso recomendada para diferencias más limpias en el control de versiones. JSON, sin embargo, prohíbe estrictamente las comas finales. La entrada {"a": 1, "b": 2,} es JSON inválido y será rechazada por cualquier analizador compatible. De manera similar, [1, 2, 3,] falla la validación. Este es uno de los errores más frecuentes que cometen los desarrolladores al editar manualmente archivos JSON, y es la razón principal para usar un validador antes de enviar datos a una API o cargar un archivo de configuración.
Errores Comunes de Validación JSON en Detalle
Más allá de las comas finales, hay varias otras fuentes frecuentes de errores de validación JSON que vale la pena entender en profundidad. Cada uno proviene de una discrepancia entre lo que los desarrolladores esperan que JSON acepte y lo que la especificación realmente permite.
Comillas Faltantes o Incorrectas en las Claves
En JavaScript, puede escribir {name: "Alice"} sin entrecomillar la clave. En JSON, cada clave debe ser una cadena con comillas dobles: {"name": "Alice"}. Esto es innegociable. Algunos analizadores tolerantes aceptan claves sin comillas, pero están violando la especificación, y sus datos fallarán cuando sean procesados por un analizador estricto. Siempre use comillas dobles en cada clave de sus documentos JSON.
Comillas Simples vs. Comillas Dobles
JSON requiere comillas dobles para todas las cadenas, tanto claves como valores. Usar comillas simples como {'name': 'Alice'} es inválido. Este es un error común para desarrolladores de Python, ya que Python usa comillas simples indistintamente con comillas dobles y su representación str() de diccionarios usa comillas simples. Si está convirtiendo estructuras de datos Python a JSON, siempre use la función json.dumps() en lugar de str(), porque json.dumps() produce correctamente salida con comillas dobles.
Comentarios en JSON
La especificación JSON no permite ninguna forma de comentarios, ni de una línea (//) ni de múltiples líneas (/* */). Esta es una decisión de diseño intencional de Douglas Crockford, quien creó JSON. Argumentó que los comentarios se estaban usando para mantener directivas de análisis, lo que causaba problemas de interoperabilidad. Si necesita comentarios en archivos de configuración, considere JSONC (JSON con Comentarios, usado por VS Code), JSON5, YAML o TOML. Cuando encuentre JSON con comentarios, elimínelos antes de analizar o use un preprocesador tolerante a comentarios.
Caracteres Especiales sin Escapar en Cadenas
Las cadenas JSON deben escapar ciertos caracteres con una barra invertida. Los caracteres de control (caracteres con puntos de código debajo de U+0020) deben escaparse. Los más comunes son saltos de línea (\n), tabulaciones (\t), retornos de carro (\r) y las barras invertidas mismas (\\). Las comillas dobles dentro de una cadena deben escaparse como \". Olvidar escapar una barra invertida en una ruta de archivo de Windows como "C:\new\folder" produce una cadena JSON inválida porque \n se interpreta como un salto de línea y \f como un avance de página. La representación correcta es "C:\\new\\folder". Este problema surge frecuentemente al incrustar rutas de archivos, patrones regex o fragmentos HTML dentro de JSON.
Problemas de Formato de Números
Los números JSON siguen reglas específicas que difieren de algunos lenguajes de programación. Los ceros iniciales no están permitidos: 007 es inválido y debe escribirse como 7. Los signos positivos no están permitidos: +5 es inválido, mientras que -5 es válido. La notación hexadecimal como 0xFF no es soportada. Infinity y NaN no son valores JSON válidos. Si necesita representar valores numéricos especiales, debe codificarlos como cadenas o usar un valor centinela y manejar la conversión en el código de su aplicación.
JSON en APIs y Archivos de Configuración
JSON se ha convertido en el formato dominante de intercambio de datos para APIs web. Cuando envía una solicitud POST a una API REST con un encabezado Content-Type: application/json, el servidor espera un cuerpo JSON estrictamente válido. Si su cuerpo de solicitud contiene cualquier error de sintaxis, el servidor típicamente devolverá una respuesta 400 Bad Request, a menudo con un mensaje de error de análisis críptico que puede ser difícil de depurar. Validar su carga JSON antes de enviarla elimina toda esta clase de errores y acelera significativamente el desarrollo de APIs.
En el contexto de APIs REST, la validación JSON importa en ambos extremos de la comunicación. En el lado del cliente, necesita asegurarse de que los datos que envía estén bien formados. En el lado del servidor, necesita validar el JSON entrante antes de procesarlo para prevenir que datos malformados corrompan el estado de su aplicación. Muchos frameworks web realizan el análisis JSON básico automáticamente, pero la validación estructural, asegurarse de que los campos correctos existan con los tipos correctos, requiere herramientas adicionales de validación de esquemas como JSON Schema.
Los archivos de configuración son otro caso de uso importante para JSON. Los gestores de paquetes como npm usan package.json, TypeScript usa tsconfig.json, ESLint usa .eslintrc.json, y muchos servicios en la nube como AWS CloudFormation y Azure Resource Manager usan plantillas JSON. Un error de sintaxis en cualquiera de estos archivos puede impedir que su pipeline de compilación se ejecute, que su aplicación se inicie o que su infraestructura se despliegue. Los riesgos son particularmente altos en entornos de CI/CD donde una configuración JSON malformada puede bloquear todo un proceso de lanzamiento.
Los sistemas de bases de datos también dependen fuertemente de JSON. PostgreSQL tiene tipos de columna nativos json y jsonb, MongoDB almacena documentos como BSON (una forma binaria de JSON), y muchas otras bases de datos soportan consultas JSON. Al importar datos a estos sistemas, JSON inválido causa fallas de inserción que pueden interrumpir trabajos de procesamiento por lotes. Validar sus datos JSON antes de cargarlos en una base de datos ahorra tiempo y previene importaciones parciales que dejan sus datos en un estado inconsistente.
Más allá de la validación básica de sintaxis, muchas organizaciones adoptan JSON Schema para definir la estructura esperada de sus documentos JSON. JSON Schema le permite especificar qué campos son obligatorios, qué tipos de datos debe tener cada campo, rangos de valores aceptables, patrones de cadenas y más. Aunque esta herramienta se enfoca en la validación de sintaxis, asegurarse de que su JSON sea sintácticamente correcto es el primer paso esencial antes de que cualquier validación a nivel de esquema pueda realizarse. Un documento que no se analiza correctamente no puede validarse contra un esquema en absoluto.
Preguntas Frecuentes
¿Qué es la validación JSON?
La validación JSON verifica si una cadena cumple con la especificación JSON. El validador analiza su entrada e informa si está bien formada o identifica el error de sintaxis específico.
¿Por qué debería validar JSON?
Validar JSON antes de usarlo previene errores en tiempo de ejecución. Una sola coma faltante o un corchete no emparejado puede causar que las solicitudes de API y la carga de configuración fallen.
¿Cuáles son los errores JSON más comunes?
Comas finales, comillas simples en lugar de comillas dobles, claves sin comillas, comas faltantes entre elementos, comentarios y corchetes no emparejados son los errores JSON más frecuentes.
¿Puede JSON tener comentarios?
No. La especificación JSON no permite comentarios. Use JSONC o YAML si necesita comentarios en sus archivos de configuración.
¿Cuál es el tamaño máximo de un documento JSON?
La especificación no tiene límite. En la práctica, los analizadores de navegador manejan cientos de megabytes. Esta herramienta en línea funciona bien con documentos de hasta unos pocos megabytes.
Save your results & get weekly tips
Get calculator tips, formula guides, and financial insights delivered weekly. Join 10,000+ readers.
No spam. Unsubscribe anytime.