Si en algún momento abriste un archivo de configuración (package.json, tsconfig.json, manifest.json) o miraste la respuesta de una API en las DevTools del navegador, ya viste JSON. Es el formato de intercambio de datos más usado del mundo, y entender cómo funciona te ahorra horas de depuración.
Qué es JSON
JSON significa JavaScript Object Notation. Es una forma estandarizada y muy compacta de representar datos estructurados como texto. Soporta solo seis tipos de valores: strings, números, booleanos, null, arrays y objetos. Eso es todo. No tiene fechas, no tiene comentarios, no tiene funciones.
Un ejemplo mínimo:
{
"nombre": "Ana",
"edad": 32,
"activo": true,
"intereses": ["diseño", "ecommerce"],
"direccion": {
"ciudad": "Cali",
"pais": "Colombia"
}
}
Lo que ves arriba es legible para un humano y trivial de procesar para una máquina. Esa combinación es lo que lo hizo ganar.
Por qué se volvió universal
JSON le quitó el trono a XML alrededor de 2010 por tres razones:
- Menos verboso. XML necesita etiquetas de apertura y cierre para todo. JSON solo usa llaves, corchetes y comas.
- Mapea directo a JavaScript. El navegador puede convertir JSON en un objeto utilizable con una sola línea:
JSON.parse(texto). - Especificación corta. Toda la spec cabe en una postal. XML necesita un libro.
Hoy lo vas a encontrar en:
- Respuestas de casi todas las APIs (REST, GraphQL emite respuestas JSON).
- Archivos de configuración (
package.json,tsconfig.json,wrangler.tomlno es JSON, pero la mayoría sí lo es). - Webhooks de Shopify, Stripe, Mailgun, WhatsApp Business, etc.
- Bases de datos NoSQL como MongoDB y Firestore.
- Manifests de extensiones y PWAs.
- Mensajes entre microservicios.
Errores comunes que te van a tropezar
Comas finales. Esto es JavaScript válido pero JSON inválido:
{ "nombre": "Ana", }
La coma después del último valor revienta el parser. Es la causa #1 de “mi JSON no funciona”.
Comillas simples. JSON solo acepta comillas dobles. { 'nombre': 'Ana' } es inválido.
Comentarios. JSON no permite comentarios. Si necesitas anotar, usa un archivo aparte o una clave "_comentario": "...".
Números muy grandes. JavaScript pierde precisión con enteros > 2^53. Si trabajas con IDs grandes (como Twitter snowflake IDs), mándalos como string.
Codificación de caracteres. JSON debe estar en UTF-8. Si tu API devuelve Latin-1 o ISO-8859-1, los acentos se rompen.
Cuándo no usar JSON
JSON no es la respuesta a todo. Considera otras opciones cuando:
- Necesitas comentarios o trailing commas. Usa JSON5 o YAML.
- El archivo es enorme (>100 MB). Usa formatos columnares como Parquet o streaming como NDJSON.
- Necesitas tipos estrictos al ahorro de bytes. Protocol Buffers o MessagePack.
- Es configuración humana compleja. YAML o TOML son más legibles.
Formatea y valida en segundos
Cuando recibes JSON de una API y viene en una sola línea ilegible, o cuando tu API devuelve un error de “JSON inválido” y no encuentras dónde, conviene un formateador rápido:
Pega tu JSON, dale indentar (2 o 4 espacios) o minificar. Si hay un error, te muestra exactamente dónde está.
Si tu equipo está construyendo integraciones con APIs externas — pasarelas de pago, plataformas de envío, herramientas de email marketing — saber leer JSON con soltura no es opcional. Y si necesitas que alguien tome los datos de un sistema viejo y los exponga como API moderna, eso es exactamente lo que hacemos en Waloja.