Guía JSON

Tipos de datos JSON

Referencia práctica de los valores que sí existen en JSON, los que no son válidos y cómo representarlos correctamente en respuestas de API o archivos de configuración.

Valores permitidos en JSON

JSON admite seis tipos principales: objeto, array, string, number, boolean y null. Cualquier otro valor debe convertirse a uno de esos tipos antes de formar parte del JSON.

Ejemplo completo

JSON con varios tipos
{
  "id": 42,
  "nombre": "Ana",
  "activo": true,
  "roles": ["admin", "editor"],
  "perfil": {
    "pais": "ES"
  },
  "ultimoAcceso": null
}

Valores que no son JSON válido

No válido como JSON
{
  "fecha": new Date(),
  "pendiente": undefined,
  "calculo": NaN,
  "limite": Infinity,
  "accion": function () {}
}

Cómo representarlos correctamente

Convierte fechas a string, usa null para ausencia de valor y evita funciones o expresiones dentro del JSON. El JSON debe contener datos, no código ejecutable.

Versión válida
{
  "fecha": "2026-06-13T10:30:00Z",
  "pendiente": null,
  "calculo": null,
  "limite": null,
  "accion": "notificar"
}

Consejo práctico

Si recibes datos desde una API, valida primero la sintaxis y después revisa si los tipos tienen sentido para tu aplicación: números como números, booleanos como booleanos y ausencia de datos como null.

Herramientas relacionadas

Preguntas frecuentes

¿JSON tiene fechas?

No como tipo propio. Las fechas suelen representarse como strings, por ejemplo "2026-06-13T10:30:00Z".

¿JSON acepta undefined?

No. Si necesitas representar ausencia de valor, usa null.

¿NaN e Infinity son números JSON?

No. Aunque existen en JavaScript, no son valores válidos en JSON.