Developer

Formateo y Validación de JSON: Referencia Rápida para Desarrolladores

Formatea, valida y comprende JSON como un profesional. Cubre reglas de sintaxis, errores comunes, JSONPath y herramientas prácticas para trabajar con datos JSON.

7 min de lectura

Código en pantalla

JSON (JavaScript Object Notation) es la lengua franca de las APIs web. Simple por diseño — pero una coma faltante o una llave mal cerrada puede romper silenciosamente una aplicación. Aquí tienes todo lo que necesitas para trabajar con JSON con confianza.

Sintaxis JSON en 90 segundos

JSON tiene exactamente seis tipos de valores:

{
  "string": "hello world",
  "number": 42,
  "boolean": true,
  "null_value": null,
  "array": [1, 2, 3],
  "object": { "nested": "value" }
}

Reglas que suelen confundir:

  • Las claves deben ser cadenas entre comillas dobles{name: "Alice"} no es JSON válido
  • Sin comas finales — [1, 2, 3,] es inválido
  • Sin comentarios — JSON no tiene sintaxis // ni /* */
  • Las cadenas deben usar comillas dobles — las comillas simples no están permitidas
  • Los números no pueden tener ceros iniciales — 007 es inválido

Los errores JSON más comunes

1. Coma final

// Invalid
{ "a": 1, "b": 2, }

// Valid
{ "a": 1, "b": 2 }

2. Cadenas entre comillas simples

// Invalid
{ 'name': 'Alice' }

// Valid
{ "name": "Alice" }

3. Claves sin comillas

// Invalid
{ name: "Alice" }

// Valid
{ "name": "Alice" }

4. Valores Undefined o NaN — Estos valores de JavaScript no existen en JSON. Usa null en su lugar.

Formateo vs. minificación

El JSON con formato (pretty-printed) usa sangría y saltos de línea para mejorar la legibilidad:

{
  "user": {
    "id": 1,
    "name": "Alice"
  }
}

El JSON minificado elimina todos los espacios en blanco:

{"user":{"id":1,"name":"Alice"}}

Usa JSON con formato en archivos de configuración y código fuente. Usa JSON minificado en respuestas de API y almacenamiento para reducir el tamaño del payload. Nuestro JSON Formatter cambia entre ambos con un solo clic.

Validación con JSON Schema

JSON Schema te permite definir la estructura esperada de un documento JSON y validar datos en función de ella. Esto es esencial para contratos de API y validación de archivos de configuración.

Un esquema sencillo:

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "required": ["name", "age"],
  "properties": {
    "name": { "type": "string" },
    "age": { "type": "integer", "minimum": 0 }
  }
}

Este esquema rechaza cualquier objeto al que le falte name o age, o donde age sea negativo. El JSON Schema Validator te permite pegar el esquema y los datos para validarlos en tiempo real.

Generación de tipos TypeScript desde JSON

Si recibes una respuesta JSON de una API y necesitas interfaces TypeScript, pega el JSON en nuestro conversor JSON to TypeScript. Este infiere los tipos a partir de la estructura de datos:

Entrada:

{ "id": 1, "name": "Alice", "active": true, "tags": ["admin"] }

Salida:

interface Root {
  id: number;
  name: string;
  active: boolean;
  tags: string[];
}

JSONPath: consulta de datos anidados

JSONPath es a JSON lo que XPath es a XML — un lenguaje de consulta para extraer valores de estructuras anidadas. Sintaxis básica:

Expresión Significado
$.store.book La clave book dentro de store
$.store.book[0] Primer libro
$.store.book[*].title Todos los títulos de libros
$..price Todos los valores price en cualquier parte del documento

El JSON Path Finder te permite hacer clic en cualquier valor de un árbol JSON renderizado y copia la ruta automáticamente.

Comparación de dos objetos JSON

Al depurar cambios en una API o detectar diferencias en configuraciones, necesitas ver qué cambió entre dos objetos JSON. El JSON Diff Viewer resalta los campos añadidos, eliminados y modificados en una vista lado a lado.

Conversión de JSON a esquema Zod

Si usas Zod para validación en tiempo de ejecución en TypeScript, la herramienta JSON to Zod convierte JSON de muestra en un esquema Zod listo para usar, con inferencia inteligente de tipos para campos de email, URL y datetime.

Resumen

JSON es simple pero implacable. Valida siempre antes de parsear, usa interfaces TypeScript para detectar discrepancias de estructura en tiempo de compilación y ten siempre a mano un formateador para depurar respuestas de API. Estos hábitos previenen categorías enteras de errores en tiempo de ejecución.