logo
GeekFormat

Compresión JSON

Herramienta gratuita de compresión JSON online, admite compresión compacta de JSON en una línea, Escape/Unescape de JSON, incluye reparación sintáctica inteligente que maneja automáticamente comas finales y otros errores comunes, muestra tasa de compresión en tiempo real, editor CodeMirror con atajos de teclado, procesamiento puramente frontend.

Relacionado

Casos de uso

  • Comprimir cuerpos de solicitud/respuesta JSON en desarrollo API para reducir bytes de transmisión HTTP y mejorar la velocidad de respuesta de la interfaz (especialmente en entornos móviles con red débil)
  • Simplificar archivos de configuración JSON frontend, paquetes de idiomas i18n y datos Mock antes del lanzamiento, reduciendo el tamaño de recursos estáticos
  • Escapar objetos JSON a literales de cadena en código de pruebas unitarias, comandos Postman/curl para incrustar en código
  • Desescapar con un clic JSON escapado copiado de registros (como \"key\":\"value\") a JSON legible
  • Reparar por lotes archivos JSON con errores de sintaxis como comas finales y comillas simples, convirtiéndolos a JSON válido con un clic
  • Comprimir JSON formateado a una sola línea y pegarlo en parámetros de comandos de una línea o herramientas de chat para compartir

Características

  • Función tres en uno: compresión compacta de JSON + Escape + Unescape, cubriendo tres escenarios: reducir tamaño, incrustar en cadenas de código y revertir cadenas escapadas
  • Reparación sintáctica inteligente: motor tryFixJSON integrado que detecta y repara automáticamente comas finales, comillas simples, comentarios, comillas no cerradas y otros errores comunes de JSON
  • Editor CodeMirror: diseño de doble panel con entrada izquierda y resultados derecha, compatible con resaltado de sintaxis JSON, barra divisoria arrastrable y ajuste de tamaño de fuente
  • Estadísticas de compresión en tiempo real: la barra de estado muestra instantáneamente el tamaño original (Bytes/KB/MB), tamaño comprimido y porcentaje exacto de tasa de compresión
  • Atajos de teclado: Shift+Cmd/Ctrl+C comprimir, E escapar, U desescapar, O subir, D descargar, K limpiar, eficiente sin necesidad de ratón
  • Modo de ejecución automática: después de pegar o editar, comprime/escapa automáticamente con debounce de 400 ms, WYSIWYG
  • Subida y descarga de archivos: admite arrastrar o hacer clic para subir archivos .json/.txt, y descargar output.json con un clic después de procesar
  • Memoria de historial local: localStorage guarda automáticamente el contenido de la última entrada, no se pierde al refrescar la página
  • Datos de ejemplo: carga JSON de ejemplo con un clic para probar rápidamente, las alertas de error incluyen botón de reparación
  • Seguridad puramente frontend: todo el procesamiento se ejecuta en el navegador local, los datos no se suben al servidor, funciona sin conexión

Cómo Usar

  1. Pega el contenido JSON en el editor izquierdo, o haz clic en el botón de subir para seleccionar un archivo .json/.txt local, también puedes hacer clic en el botón «Ejemplo» para cargar un ejemplo
  2. Por defecto se ejecuta automáticamente el modo de compresión (debounce de 400 ms), también puedes hacer clic manualmente en el botón «Comprimir» o pulsar el atajo Shift+Cmd/Ctrl+C
  3. Cuando necesites escapar a cadena de código, pulsa Shift+Cmd/Ctrl+E o cambia el modo a Escape; cuando necesites revertir una cadena escapada, pulsa Shift+Cmd/Ctrl+U
  4. Si el JSON tiene errores de sintaxis, se mostrará una alerta de error roja en la parte inferior; cuando haya errores reparables, aparecerá un botón «Intentar reparar», haz clic para corregir automáticamente
  5. La barra de estado inferior muestra en tiempo real los bytes antes/después de la compresión y el porcentaje de tasa de compresión; después de confirmar el resultado, haz clic en el botón «Copiar» o «Descargar»
  6. La barra divisoria entre los paneles izquierdo y derecho se puede arrastrar para ajustar el ancho, también puedes usar atajos de teclado para completar rápidamente todas las operaciones

Preguntas Frecuentes

¿Cuál es la diferencia entre compresión JSON y formateo JSON?

El formateo JSON (Beautify) añade indentación, saltos de línea y espacios entre pares clave-valor para que sea más fácil de leer para el ojo humano, adecuado para desarrollo y depuración; la compresión JSON (Minify) elimina todos los caracteres de espacio innecesarios (espacios, saltos de línea, tabulaciones, indentación), convirtiendo JSON de varias líneas en un formato compacto de una sola línea, con el objetivo de reducir el tamaño y mejorar la eficiencia de transmisión, adecuado para transmisión API en producción, archivos de configuración compactos e incrustación en cadenas de código. Ambas son operaciones complementarias: se usa la versión formateada durante el desarrollo y la versión comprimida en producción.

¿Qué es el Escape de JSON? ¿Cuándo se necesita usar?

El Escape de JSON consiste en añadir barras invertidas de escape a los caracteres especiales en cadenas JSON (principalmente convirtiendo comillas dobles " a \", barras invertidas \ a \\, saltos de línea a \n, etc.), convirtiendo objetos JSON de varias líneas en un literal de cadena de una sola línea que se puede incrustar directamente en código fuente de JavaScript, Java, Python, etc. Escenarios típicos: incrustar respuestas JSON como cadenas en código de prueba al escribir pruebas unitarias; pasar cadenas JSON en comandos Postman o curl; usar JSON como valor de cadena en archivos de configuración. Unescape revierte la cadena escapada a JSON estándar.

Si el JSON de entrada tiene errores de sintaxis (como coma final), ¿se puede comprimir con éxito?

Sí. Esta herramienta incluye un motor de reparación sintáctica inteligente (tryFixJSON) que detecta automáticamente e intenta reparar errores comunes de JSON antes de comprimir: 1) comas sobrantes al final (trailing comma), como {"a":1,}; 2) comillas simples en lugar de comillas dobles, como {'a':1}; 3) cadenas no cerradas; 4) comentarios de JavaScript (// y /* */); 5) comas sobrantes al final, etc. Después de reparar, se ejecuta la compresión o el escape para garantizar que la salida sea JSON 100% válido. Si se detectan errores reparables, aparecerá un botón «Intentar reparar» en el panel; haz clic para corregir automáticamente.

¿La compresión JSON pierde datos? ¿Cuál es la tasa de compresión habitual?

No pierde datos. La compresión JSON solo elimina caracteres de espacio de formato (espacios, saltos de línea, tabulaciones), sin cambiar ningún nombre de clave, valor de clave, tipo de dato ni estructura. Después de JSON.parse y JSON.stringify, los datos son completamente idénticos a los originales. La tasa de compresión depende del grado de formateo del JSON original: si el JSON original estaba formateado con indentación de 2 espacios, la tasa de compresión suele ser del 20%-40% (eliminando indentación y saltos de línea); si hay muchos espacios consecutivos o comentarios (después de reparar), la tasa de compresión puede superar el 50%. La barra de estado muestra en tiempo real el número de bytes originales, los bytes comprimidos y la tasa de compresión exacta.

¿Se filtrarán datos al comprimir configuraciones JSON sensibles o datos de API?

No. Esta herramienta adopta una arquitectura de procesamiento puramente frontend. Todo el análisis, compresión, escape y reparación de JSON se realiza completamente en el motor JavaScript de tu navegador local. Los datos no se suben a servidores externos mediante ninguna solicitud de red, y se puede usar sin conexión. Tu clave API, configuración de base de datos, datos de negocio y otra información sensible permanecen siempre localmente.

¿Qué atajos de teclado admite?

Para mejorar la eficiencia, esta herramienta ofrece soporte completo de atajos de teclado (macOS usa ⌘+Shift, Windows usa Ctrl+Shift): Shift+⌘/Ctrl+C comprimir con un clic; Shift+⌘/Ctrl+E escapar; Shift+⌘/Ctrl+U desescapar; Shift+⌘/Ctrl+O subir archivo; Shift+⌘/Ctrl+D descargar resultado; Shift+⌘/Ctrl+K limpiar. Al escribir, la herramienta también ejecuta automáticamente el modo actual con debounce de 400 ms, sin necesidad de hacer clic repetidamente en botones.

¿Qué es la compresión JSON (JSON Minify)?

La compresión JSON (JSON Minification) es el proceso de eliminar todos los caracteres de espacio innecesarios (espacios, saltos de línea \n, tabulaciones \t, retornos de carro \r) y comentarios (no estándar pero comunes) del texto JSON, convirtiendo JSON formateado con indentación multinivel a formato compacto de una sola línea. La compresión JSON no cambia ningún contenido de datos: los nombres de clave, valores de clave, tipos de datos (cadena/número/booleano/null/array/objeto) y estructura anidada permanecen completamente intactos, solo se eliminan los espacios de formato para lectura humana.

El valor central de la compresión JSON es reducir el volumen de datos. Los espacios de indentación y saltos de línea en JSON formateado, aunque amigables para los desarrolladores, son bytes redundantes durante la transmisión y el almacenamiento en red. Por ejemplo, una respuesta API típica puede tener 2 KB formateada y solo 1,2-1,5 KB comprimida, reduciendo el tamaño entre un 25% y un 40%. En escenarios API de alta concurrencia, entornos móviles con red débil y distribución masiva de archivos de configuración, la compresión JSON reduce significativamente el consumo de ancho de banda, mejora la velocidad de transmisión y reduce la carga del servidor. En producción se usa normalmente junto con compresión HTTP como Gzip/Brotli, pero JSON Minify como compresión de capa de contenido sigue siendo insustituible.

La implementación de la compresión JSON es muy sencilla: usa JSON.parse() para analizar el texto en un objeto JavaScript, luego usa JSON.stringify(obj) sin parámetros de indentación para serializar la salida; esta es precisamente la implementación central de esta herramienta. Este método de parse + stringify garantiza naturalmente que el JSON de salida sea 100% válido y también elimina automáticamente comentarios ilegales y comas finales (junto con la reparación de errores). Es importante tener en cuenta: la compresión JSON y la compresión Gzip son optimizaciones de diferentes capas: JSON Minify elimina espacios redundantes en la capa de contenido, Gzip es un algoritmo de compresión general en la capa de transmisión, y ambos se pueden usar en combinación.

术语表

JSON
JavaScript Object Notation, un formato ligero de intercambio de datos que usa pares clave-valor y estructuras de array, legible por humanos y fácil de analizar por máquinas, es el formato de datos estándar para REST API.
Minify / Compresión
Proceso de eliminar todos los caracteres innecesarios (espacios, saltos de línea, comentarios) del código/datos para reducir el tamaño, común en recursos frontend como JS/CSS/JSON.
Beautify / Formateo
Operación inversa de Minify, añade indentación, saltos de línea y espacios para que la estructura JSON sea clara y legible, también llamado Prettify o Pretty Print.
Escape
Añadir barras invertidas antes de caracteres especiales (como " que se convierte en \", salto de línea que se convierte en \n), convirtiendo JSON de varias líneas en un literal de cadena de una sola línea incrustable en código.
Unescape
Operación inversa de Escape, revierte secuencias de escape como \", \n, \\ a caracteres originales, restaurando el formato JSON estándar.
Trailing Comma
Coma sobrante después del último elemento de un objeto o array; JavaScript lo permite pero el estándar JSON no, es el error de sintaxis JSON más común.
Gzip / Brotli
Algoritmos de compresión general de capa de transmisión HTTP, complementarios a JSON Minify; el mejor efecto se obtiene comprimiendo con Gzip después de Minify.
Payload
El cuerpo de datos real transmitido en una solicitud o respuesta API (normalmente en formato JSON); comprimir Payload reduce directamente el consumo de ancho de banda.
CodeMirror
Componente de editor de código del lado del navegador; esta herramienta lo usa para lograr resaltado de sintaxis JSON, números de línea, coincidencia de paréntesis y experiencia de edición profesional.

Comparación entre compresión JSON y métodos de compresión comunes

Método de compresiónCapa de compresiónSin pérdidaLegibilidadEscenario aplicable
JSON MinifyCapa de contenido (eliminar espacios)Sin pérdidaIlegible (una línea)Transmisión API producción, configuración compacta
JSON BeautifyCapa de contenido (añadir espacios)Sin pérdidaAlta legibilidadDesarrollo y depuración, lectura humana
GzipCapa de transmisiónSin pérdidaIlegible (binario)Content-Encoding de respuestas HTTP
BrotliCapa de transmisiónSin pérdidaIlegible (binario)Compresión de recursos estáticos HTTPS (20% más que Gzip)
MessagePackCapa de serializaciónSin pérdidaIlegible (binario)Comunicación interna RPC de alto rendimiento

Tabla de caracteres especiales de escape JSON

Carácter originalDespués de escaparNombreDescripción
"\"Comillas doblesEl carácter más común que debe escaparse en cadenas JSON
\\\Barra invertidaEl carácter de escape en sí mismo necesita ser escapado
Salto de línea\nNewlineDebe escaparse al comprimir cadenas de varias líneas a una sola línea
Tabulación\tTabEscape de tabulación de indentación
Retorno de carro\rCarriage ReturnCR en el salto de línea CRLF de Windows
/\/Barra diagonalEl estándar JSON permite pero no obliga a escaparla (opcional)

Authoritative References