Significado de JSON y un primer ejemplo
JSON son las siglas de JavaScript Object Notation (notación de objetos de JavaScript). Lo popularizó Douglas Crockford a principios de los años 2000, toma su sintaxis de JavaScript y está estandarizado como RFC 8259 y ECMA-404. A pesar de su nombre, JSON es independiente de cualquier lenguaje de programación: prácticamente todos los lenguajes pueden leerlo y escribirlo.
Un pequeño documento JSON que describe a una persona:
{"name": "Ada Lovelace", "born": 1815, "languages": ["English", "French"], "mathematician": true, "spouse": null}
Tipos de datos en JSON
| Tipo | Ejemplo | Notas |
|---|---|---|
| Cadena (string) | "Hello" | texto entre comillas dobles, con escapes como \n |
| Número (number) | 42, -3.14, 6.02e23 | sin NaN, Infinity, hexadecimales ni ceros iniciales |
| Booleano (boolean) | true, false | siempre en minúsculas |
| Null | null | un valor vacío o desconocido |
| Objeto (object) | {"key": "value"} | pares nombre/valor; los nombres son cadenas |
| Array | [1, 2, 3] | una lista ordenada de valores de cualquier tipo |
JSON no tiene un tipo fecha: las fechas suelen escribirse como cadenas ISO 8601, por ejemplo "2026-05-01T10:00:00Z".
Formato JSON: reglas de sintaxis
- Los datos se escriben como pares nombre/valor:
"name": "Ada". - Los nombres (claves) y las cadenas siempre usan comillas dobles, nunca comillas simples.
- Los elementos se separan con comas, sin coma después del último.
- Las llaves
{ }contienen objetos y los corchetes[ ]contienen arrays. - No se permiten comentarios.
- Los espacios y los saltos de línea entre elementos se ignoran, así que los mismos datos pueden estar minificados o formateados.
- Un texto JSON contiene un único valor de nivel superior y se codifica en UTF-8.
¿Qué es un archivo JSON?
Un archivo JSON es un archivo de texto plano con la extensión .json que contiene un documento JSON. Su tipo MIME es application/json y debe guardarse en UTF-8. Los archivos JSON típicos son exportaciones de datos de aplicaciones y sitios web (por ejemplo, Google Takeout o las descargas de datos de redes sociales), archivos de configuración como package.json, respuestas de API guardadas en disco y conjuntos de datos para análisis. Como es texto plano, abrir un archivo JSON es seguro: no puede ejecutar código.
Cómo abrir un archivo JSON
| Dónde | Cómo |
|---|---|
| Windows | Haz clic derecho en el archivo → Abrir con → Bloc de notas, o usa un editor de código como VS Code. También puedes arrastrar el archivo a una ventana del navegador para verlo. |
| Mac | Ábrelo con TextEdit o con un editor de código, o suéltalo en una ventana del navegador. |
| iPhone y Android | Ábrelo desde la app Archivos en un visor de texto o cárgalo en un visor JSON online: el nuestro funciona en teléfonos y el archivo no sale de tu dispositivo. |
| Navegador web | Firefox incluye un visor JSON; en cualquier navegador, un visor JSON online muestra los datos como un árbol plegable. |
| Excel | En Windows, usa Datos → Obtener datos → Desde un archivo → Desde JSON, o convierte antes el archivo con JSON a CSV. |
JSON vs XML
| JSON | XML | |
|---|---|---|
| Sintaxis | llaves, corchetes, pares nombre/valor | etiquetas de apertura y cierre |
| Tipos de datos | cadena, número, booleano, null, objeto, array | solo texto, salvo que un schema defina tipos |
| Tamaño | compacto | mayor por las etiquetas de cierre |
| Comentarios | no | sí |
| Atributos, espacios de nombres | no | sí |
| Uso típico | API web, configuración, bases de datos NoSQL | documentos, archivos de ofimática, SOAP y sistemas empresariales |
JSON en API y aplicaciones
La mayoría de las API web envían y reciben JSON. Un cliente envía una petición con la cabecera Content-Type: application/json, el servidor responde con JSON y el programa lo convierte en objetos nativos con JSON.parse en JavaScript, json.loads en Python o json_decode en PHP. JSON también se usa en archivos de configuración como package.json y tsconfig.json, en bases de datos documentales como MongoDB y en la salida estructurada de los modelos de IA.
Errores JSON comunes
- Una coma final después del último elemento:
[1, 2,] - Comillas simples o claves sin comillas:
{'a': 1},{a: 1} - Comentarios como
// note - Falta una coma o un corchete entre elementos
- Valores de JavaScript o Python como
undefined,NaNoTrue
Pega tus datos en el validador JSON para ver la línea y la columna exactas del problema, o deja que Reparar lo corrija automáticamente.
JSON5, JSONC y JSON Lines
- JSON5: un superconjunto más flexible para archivos escritos a mano, con comentarios, comas finales, comillas simples, claves sin comillas y números hexadecimales. Los parsers JSON estándar no pueden leerlo.
- JSONC: JSON con comentarios, que se usa en la configuración de VS Code y en
tsconfig.json. - JSON Lines / NDJSON (
.jsonl): un valor JSON por línea, ideal para logs y para procesar en streaming grandes conjuntos de datos. - GeoJSON: JSON para elementos geográficos, definido en el RFC 7946.
Preguntas frecuentes
¿JSON es un lenguaje de programación?
No. JSON es un formato de datos: describe datos, pero no puede contener lógica, funciones ni comentarios.
¿JSON es lo mismo que un objeto de JavaScript?
No. JSON es texto que se parece a un literal de objeto de JavaScript, pero es más estricto: las claves y las cadenas necesitan comillas dobles, y no se permiten funciones, undefined ni comentarios. JSON.parse convierte el texto en un objeto real.
¿Cómo creo un archivo JSON?
Escribe los datos en cualquier editor de texto siguiendo las reglas anteriores y guárdalo en UTF-8 con la extensión .json. Compruébalo con un validador JSON antes de usarlo.
Última actualización: