Saltar al contenido principal
ByteNova
Desarrollo web

¿Qué es JSON y para qué sirve?

Publicado por ByteNova ·

En este artículo aprenderás:

Qué es JSON, cómo se organiza con objetos y arrays, cuáles son sus reglas de sintaxis y por qué es tan utilizado para intercambiar información entre aplicaciones y APIs.

Contenido del artículo

JSON es un formato de texto utilizado para representar información estructurada. Es común en APIs, archivos de configuración y aplicaciones web porque puede expresar objetos, listas, números, textos, valores booleanos y datos nulos de una forma relativamente legible.

¿Qué es JSON?

JSON significa JavaScript Object Notation. Aunque su sintaxis se inspiró en JavaScript, es un formato independiente que puede utilizarse desde muchos lenguajes.

Su función principal es representar datos, no ejecutar lógica.

¿Para qué sirve JSON?

JSON se utiliza para intercambiar información entre sistemas, guardar configuraciones y representar estructuras de datos de forma portable.

Una API puede enviar información de usuarios, productos o clima en JSON para que una aplicación la procese.

Estructura básica

JSON utiliza objetos y arrays. Un objeto agrupa pares clave-valor entre llaves y un array organiza valores entre corchetes.

Las claves de un objeto se escriben como cadenas de texto entre comillas dobles.

{
  "nombre": "ByteNova",
  "activo": true,
  "temas": ["programación", "IA", "ciberseguridad"]
}

Tipos de valores permitidos

JSON admite cadenas de texto, números, objetos, arrays, valores booleanos y null.

No admite directamente funciones, comentarios, fechas como tipo especial ni valores undefined.

Objetos JSON

Un objeto representa propiedades relacionadas. Cada clave debe ir entre comillas dobles y se separa del valor mediante dos puntos.

Las propiedades se separan con comas.

{
  "id": 7,
  "titulo": "Introducción a JSON",
  "publicado": true
}

Arrays en JSON

Un array permite guardar varios valores en orden. Puede contener números, textos, objetos u otros arrays.

Es común que una API devuelva una lista de registros como un array de objetos.

[
  {"id": 1, "nombre": "HTML"},
  {"id": 2, "nombre": "CSS"},
  {"id": 3, "nombre": "JavaScript"}
]

Datos anidados

Los objetos y arrays pueden combinarse para representar estructuras más complejas. Un usuario puede tener una dirección como objeto y una lista de roles como array.

Demasiada anidación puede dificultar el consumo, por lo que el diseño del formato también importa.

Reglas de sintaxis importantes

Las cadenas usan comillas dobles, no se permiten comas finales y las claves de objetos deben escribirse entre comillas.

Un pequeño error de sintaxis puede hacer que todo el documento sea inválido.

JSON y JavaScript

JavaScript incluye JSON.parse para convertir texto JSON en valores del lenguaje y JSON.stringify para convertir valores compatibles a texto JSON.

Esto facilita guardar o enviar información, pero parsear datos no significa que debas confiar automáticamente en su contenido.

const texto = '{"nombre":"ByteNova"}';
const datos = JSON.parse(texto);

console.log(datos.nombre);

JSON y las APIs

Muchas APIs web utilizan JSON como formato de solicitud y respuesta. El cliente envía o recibe texto JSON a través de HTTP y lo convierte en estructuras que el lenguaje puede utilizar.

Una API no está obligada a usar JSON, pero es una de las opciones más comunes.

Content-Type

Cuando un servidor envía JSON por HTTP, suele indicar Content-Type: application/json. Esto comunica al cliente qué tipo de contenido contiene la respuesta.

Los encabezados forman parte del protocolo HTTP y ayudan a interpretar correctamente los datos.

JSON vs. XML

JSON y XML son formatos diferentes para representar información estructurada. JSON suele ser más compacto para muchos casos web, mientras XML ofrece características propias y sigue utilizándose en determinados sistemas.

No existe una regla universal que haga que uno sea siempre mejor.

JSON en archivos de configuración

Muchas herramientas utilizan archivos JSON para guardar configuración. package.json en proyectos JavaScript es un ejemplo conocido.

Como estos archivos pueden controlar herramientas y dependencias, un error de sintaxis puede impedir que el proyecto funcione.

Cómo validar JSON

Antes de utilizar un documento externo conviene verificar que tenga sintaxis válida y después validar que su estructura sea la esperada.

Una respuesta puede ser JSON válido y aun así contener campos faltantes, tipos incorrectos o datos inesperados.

JSON y seguridad

JSON es solo un formato; no vuelve seguros los datos. Las aplicaciones deben validar información recibida y escapar contenido cuando lo muestran en contextos donde podría interpretarse como código o HTML.

Nunca confíes en datos solo porque llegaron en JSON.

Errores frecuentes

Usar comillas simples, dejar una coma al final, escribir comentarios o asumir que cualquier objeto de JavaScript puede convertirse sin problemas son errores comunes.

También es frecuente confundir JSON con un objeto ya procesado por el lenguaje.

Ejercicio práctico

Crea un objeto JSON que represente un curso con título, duración, nivel y una lista de temas. Después añade un objeto autor y un valor booleano que indique si está disponible.

Valídalo y luego intenta leerlo desde JavaScript con JSON.parse.

JSON válido vs. JSON bien diseñado

Un documento puede ser sintácticamente válido y aun así estar mal diseñado para una aplicación. Nombres ambiguos, estructuras excesivamente profundas o tipos inconsistentes dificultan el consumo.

Un buen formato mantiene nombres claros, tipos previsibles y una estructura estable que los clientes puedan interpretar.

¿Cómo se representan fechas?

JSON no tiene un tipo fecha nativo. Las fechas suelen enviarse como cadenas, por ejemplo en formatos basados en ISO 8601.

El consumidor debe interpretar esa cadena y considerar zona horaria y formato para evitar errores.

Números y precisión

JSON representa números de forma genérica, pero el lenguaje que los procesa puede tener límites de precisión. Identificadores muy grandes, cantidades financieras o valores científicos pueden requerir tratamiento especial.

Por eso algunas APIs envían ciertos identificadores como texto aunque visualmente parezcan números.

JSON Schema

JSON Schema es una especificación que permite describir la estructura esperada de un documento JSON: campos obligatorios, tipos, rangos y otras reglas.

Puede utilizarse para validar datos antes de procesarlos y documentar contratos entre sistemas.

Ejemplo de respuesta de una API

Una API podría devolver un objeto con información del usuario y una lista de artículos. El cliente procesa esa estructura y decide cómo mostrarla.

El formato debe ser estable y documentado para que distintas aplicaciones puedan utilizarlo sin adivinar qué significa cada campo.

{
  "usuario": {
    "id": 25,
    "nombre": "Dylan"
  },
  "articulos": [
    {"id": 1, "titulo": "¿Qué es JSON?"}
  ]
}

Manejo de errores con JSON

Muchas APIs devuelven errores en JSON con campos como código, mensaje y detalles. Esto permite que una aplicación muestre información útil o tome decisiones según el tipo de problema.

El cliente debe considerar que una respuesta puede tener una estructura distinta cuando ocurre un error.

Serialización y deserialización

Convertir una estructura del programa a JSON se conoce como serialización. Hacer el proceso inverso para obtener objetos o valores se conoce como deserialización.

Los nombres pueden variar entre bibliotecas, pero la idea aparece constantemente en comunicación entre sistemas.

Preguntas frecuentes

¿JSON es un lenguaje de programación?

No. Es un formato de datos. No contiene instrucciones para ejecutar lógica.

¿JSON pertenece solo a JavaScript?

No. Su sintaxis se inspiró en JavaScript, pero puede utilizarse desde muchos lenguajes.

¿Puedo escribir comentarios dentro de JSON?

El estándar JSON no admite comentarios.

¿Una API siempre usa JSON?

No. Puede utilizar otros formatos, aunque JSON es muy común en APIs web.

¿JSON puede contener imágenes?

No como tipo nativo. Puede contener texto que represente una URL o datos codificados, aunque eso no siempre es la mejor opción.

Conclusión

JSON se convirtió en un formato fundamental de la Web porque representa datos estructurados de forma sencilla y portable. Comprender objetos, arrays, tipos y reglas de sintaxis facilita trabajar con JavaScript, APIs y configuraciones.

Artículo creado por

ByteNova

Proyecto educativo creado por Dylan Estrada. ByteNova publica contenido sobre programación, desarrollo web, inteligencia artificial y ciberseguridad con un enfoque claro para principiantes y revisión editorial continua.

Conoce más sobre ByteNova →