¿Qué es Formateador de JSON?
JSON (JavaScript Object Notation) es el formato universal de intercambio de datos para API, archivos de configuración y aplicaciones web. El Formateador JSON toma JSON sin formato, minificado o mal formado y lo transforma en una salida legible y correctamente indentada. También valida tu JSON según la especificación y resalta la ubicación exacta de los errores de sintaxis, lo que lo convierte en una herramienta diaria esencial para cualquier desarrollador que trabaje con API o archivos de configuración.
Las respuestas de API en crudo, las exportaciones de bases de datos y el JSON generado por programa suelen estar minificados: se elimina todo el espacio en blanco para reducir el tamaño del archivo. Aunque es eficiente para las máquinas, el JSON minificado es casi imposible de leer y depurar para las personas. Nuestro formateador añade una indentación y saltos de línea coherentes para hacer visibles las estructuras anidadas, ayudándote a entender rápidamente JSON complejo y a localizar campos concretos.
Más allá del formateo, nuestra herramienta valida el JSON según la RFC 8259. Errores comunes —comas finales, comillas simples, claves sin comillas, comentarios al estilo de JavaScript— son todos JSON no válido y provocan fallos de análisis. El validador identifica exactamente dónde ocurren estos errores, convirtiendo crípticos fallos de análisis en mensajes de error accionables.
Casos de uso
Aquí tienes las formas más comunes en que la gente usa Formateador de JSON todos los días.
Depuración de respuestas de API
Cuando una API devuelve datos inesperados, pega el cuerpo de la respuesta en crudo para hacer legible la estructura. El JSON largo y anidado se vuelve navegable con la indentación adecuada. Localiza rápidamente campos concretos, comprueba tipos de datos, verifica longitudes de arrays e identifica claves ausentes o inesperadas. El formateador convierte un muro de caracteres en un documento estructurado y fácil de escanear.
Edición de archivos de configuración
package.json, tsconfig.json, .eslintrc, vercel.json y muchísimos otros archivos de configuración usan JSON. El validador detecta errores de sintaxis antes de que ejecutes la herramienta y te encuentres con un fallo de análisis críptico. Un formato coherente garantiza diffs limpios en el control de versiones.
Minificar para producción
Antes de publicar un archivo JSON, minifícalo para eliminar el espacio en blanco y reducir su tamaño. Un archivo de configuración formateado de 50 KB se minifica a unos 35 KB. Usa el minificador para respuestas de API y archivos de configuración servidos por HTTP y reducir el tamaño de la carga sin cambiar los datos.
Ejemplos de documentación de API
La documentación de API requiere ejemplos de solicitud y respuesta JSON bien formateados. Formatea tus cargas de ejemplo para una documentación coherente y legible que reduzca el tiempo de integración, porque los desarrolladores pueden entender de inmediato la estructura y los tipos de datos esperados.
Comparación y revisión de datos
Al comparar dos respuestas JSON —antes y después de un cambio, de dos entornos distintos— el JSON formateado con indentación coherente hace visibles las diferencias. La salida formateada puede pegarse en herramientas de diff para una comparación línea a línea. El JSON minificado de distintas fuentes puede tener un orden de claves diferente, lo que imposibilita la comparación directa sin formatear primero.
Validar cargas de webhooks y eventos
Los webhooks de Stripe, GitHub, Twilio y otras plataformas entregan cargas JSON a tu endpoint. Al depurar el manejo de webhooks o escribir pruebas de integración, pega la carga en crudo en el formateador para entender la estructura completa, incluidos objetos anidados, longitudes de arrays y tipos de datos. El validador detecta de inmediato cargas mal formadas que harían que JSON.parse() lanzara un error, ahorrando tiempo al rastrear el origen de fallos de análisis inesperados en tu manejador.
Ejemplos
Formatear una respuesta minificada
Hacer legible una respuesta de API minificada.
{"user":{"id":42,"name":"John","active":true}} {
"user": {
"id": 42,
"name": "John",
"active": true
}
} Detectar un error de coma final
Identifica y corrige el error de sintaxis JSON más común antes de que provoque un fallo en tiempo de ejecución.
{
"name": "app",
"version": "1.0.0",
} Error: coma final en la línea 3 — elimina la coma después de "1.0.0" Formatear una respuesta profundamente anidada
Hacer navegable una respuesta de API compleja con arrays y objetos anidados.
{"data":{"users":[{"id":1,"profile":{"name":"Alice","roles":["admin","editor"]}},{"id":2,"profile":{"name":"Bob","roles":["viewer"]}}],"total":2}} Estructura de 6 niveles de profundidad formateada con indentación coherente de 2 espacios Formateador de JSON frente a Browser DevTools / VS Code
Nuestro formateador independiente frente a las herramientas de desarrollo integradas para trabajar con JSON.
| Característica | Toolorah | Browser DevTools / VS Code |
|---|---|---|
| Disponible sin abrir un proyecto | Sí — pestaña del navegador | Requiere abrir DevTools o el editor |
| Valida JSON al pegar | Sí — al instante | VS Code: sí con extensión; DevTools: no |
| Muestra la ubicación del error | Sí — línea y carácter | VS Code: sí; DevTools: limitado |
| Minificar la salida | Sí | DevTools: sí por consola; VS Code: extensión |
| Maneja entradas de cualquier tamaño | En el cliente — mejor por debajo de 1 MB | VS Code maneja mejor los archivos grandes |
| No requiere instalación | Sí | VS Code requiere instalación |
| Compartir con compañeros | Pegar el resultado | Compartir el archivo |
Consejos para usar Formateador de JSON
- JSON requiere comillas dobles para todas las claves y valores de cadena; las comillas simples provocan un error de análisis.
- Las comas finales tras el último elemento de un objeto o array no son JSON válido.
- JSON no admite comentarios: usa JSONC o YAML si necesitas comentarios legibles en archivos de configuración.
- Para archivos JSON muy grandes (megabytes), usa una herramienta local como jq o tu editor de código para un mejor rendimiento.
- La indentación de 2 espacios es el estándar más común, usado por npm, la mayoría de los formateadores JSON y las principales guías de estilo.
Preguntas frecuentes
¿Por qué mi JSON no es válido?
Los errores de validación de JSON más comunes: comas finales (el último elemento de un objeto o array no puede llevar una coma detrás), comillas simples en lugar de dobles (JSON requiere comillas dobles para todas las cadenas y claves), claves sin comillas ({"key": "value"} válido, {key: "value"} no válido), comentarios al estilo de JavaScript (// y /* */ no son válidos en JSON), valores undefined y NaN (usa null en su lugar) y números con ceros iniciales (0123 no válido, 123 válido). El validador resalta la línea y la posición del carácter del primer error que encuentra.
¿Cuál es la diferencia entre JSON y los objetos de JavaScript?
JSON es un formato de datos estricto derivado de la sintaxis de objetos de JavaScript con restricciones: todas las claves deben usar comillas dobles, los valores de cadena requieren comillas dobles, no se permiten funciones ni undefined, no se permiten comentarios y valores flotantes especiales como Infinity y NaN no son válidos. El JSON válido es JavaScript válido (como valor literal), pero los objetos de JavaScript válidos a menudo no son JSON válido. La infracción más común son los objetos de JavaScript con claves sin comillas: sintaxis JS perfectamente válida pero JSON no válido.
¿Qué tamaño de indentación debo usar?
Dos espacios es el estándar más común, usado por la salida de package.json de npm, la mayoría de las herramientas JSON y guías de estilo como Google y Airbnb. Cuatro espacios lo usan algunos equipos y es habitual en herramientas basadas en Python. La indentación con tabulador produce el archivo más pequeño (un byte por nivel) y permite que los editores muestren el ancho según las preferencias del usuario. La coherencia dentro de un proyecto importa más que la opción que elijas: usa lo que ya usen los archivos existentes de tu proyecto.
¿Cómo valido JSON de forma programática?
En JavaScript, envuelve JSON.parse() en un try-catch: try { const obj = JSON.parse(jsonString); } catch (e) { console.log("JSON no válido:", e.message); }. En Python, usa json.loads() en un bloque try-except. Ambos enfoques exponen el mensaje de error de análisis, que normalmente incluye la línea y la posición del carácter no válido. Para validar en pipelines de CI/CD, herramientas como jsonlint (CLI de Node.js) y jq (procesador universal de JSON) pueden validar archivos como parte de comprobaciones automatizadas.
¿Qué es JSON5 y en qué se diferencia de JSON?
JSON5 es un superconjunto de JSON que añade características al estilo de JavaScript: claves sin comillas, cadenas con comillas simples, comas finales, cadenas multilínea y comentarios de JavaScript. Se creó para archivos de configuración donde los humanos escriben el JSON y desean estas comodidades. JSON5 no es JSON estándar y no puede analizarse con JSON.parse(): requiere una librería JSON5 aparte. JSONC (JSON con comentarios) es otro formato de configuración común que solo añade soporte para comentarios. Nuestro formateador maneja JSON estándar; para JSON5 o JSONC, el comando de formato de tu editor es más adecuado.
¿Puede JSON representar todos los tipos de datos de JavaScript?
JSON admite un conjunto limitado de tipos: objetos (mapas clave-valor), arrays, cadenas, números, booleanos (true/false) y null. Tipos de JavaScript no admitidos en JSON: undefined (usa null), funciones (no se pueden serializar), Symbol, BigInt, objetos Date (conviértelos a cadena ISO: date.toISOString()), Map y Set (conviértelos a arrays u objetos) y referencias circulares (hacen que JSON.stringify lance un error). Al serializar JavaScript a JSON, estos tipos deben convertirse manualmente antes de llamar a JSON.stringify().
¿Qué es NDJSON y en qué se diferencia del JSON normal?
NDJSON (JSON delimitado por saltos de línea, también llamado JSON Lines o JSONL) almacena un objeto JSON completo por línea en lugar de envolver todos los registros en un único array. JSON normal: [{"id":1},{"id":2}]. NDJSON: {"id":1}\n{"id":2}. NDJSON es preferible para datos en streaming, archivos de registro y grandes conjuntos de datos, porque puedes leer y procesar un registro a la vez sin cargar todo el archivo en memoria. Los analizadores de JSON estándar no pueden analizar NDJSON directamente: cada línea debe analizarse por separado con JSON.parse().