JSON es el formato dominante de intercambio de datos en la web moderna. Es simple en la superficie — un puñado de tipos primitivos, objetos con claves string y arrays — pero su rigor pilla a desarrolladores todos los días. Esta guía revisa la estructura, las trampas de sintaxis que hacen fallar la validación, cuándo formatear y cuándo minificar, y las variantes más laxas que te encontrarás.

Estructura de JSON

Todo documento JSON es un objeto (envuelto en { } con pares clave–valor separados por comas) o un array (envuelto en [ ] con valores separados por comas). Los valores son strings (entre comillas dobles), números, booleanos (true/false), null, objetos o arrays. Las claves siempre deben ser strings entre comillas dobles — ni comillas simples ni identificadores sin comillar.

Errores de sintaxis que cuestan horas

Pretty-print vs minificar

El JSON con formato es para humanos: la indentación y los saltos de línea ayudan a leer la estructura y comparar valores. Úsalo en archivos de configuración, documentación y logs de depuración. El minificado es para máquinas: todo en una línea, sin espacios, payload mínimo. Úsalo cuando el JSON viaja por red o se almacena a gran escala. La mayoría de herramientas alternan con una llamada (JSON.stringify(obj, null, 2) para pretty, JSON.stringify(obj) para minify).

JSON5 y JSONC

Cuando necesitas comentarios y comas finales existen dos superconjuntos habituales. JSON5 admite strings con comillas simples, claves sin comillar, comentarios, comas finales, hex y strings multilínea. JSONC — usado por VS Code — es más estricto: sólo añade comentarios sobre JSON puro. Ninguno se parsea universalmente; convierte a JSON estricto antes de enviarlo por red.

Tamaño y rendimiento

Minificar JSON formateado recorta el tamaño en un 15–30%. La compresión gzip aplana esa diferencia, así que para JSON servido por HTTP, gzip suele ganar al minificado. Para localStorage, IndexedDB y payloads móviles limitados, minificar sigue importando — cada byte cuenta.

Validar como costumbre

Cuando un sistema rechace tu JSON, pégalo en un validador antes de editar. Nueve de cada diez errores son una coma final que no viste, una comilla simple accidental o un carácter de control colado. Un validador señala la línea y columna exactas, ahorrándote la media hora de revisión visual que habrías hecho.