Saltar al contenido
4all.tools

Convertir JSONC a JSON y reparar JSON

Convierte comentarios y comas finales de JSONC a JSON estricto o intenta reparar errores comunes con heurísticas acotadas y cambios revisables.

Espacio de trabajo de la herramienta

Convertir JSONC o reparar JSON

Se necesita JavaScript para convertir o reparar JSON en tu navegador.

Modo de operación

Convierte JSON estricto, comentarios // y /* */, y comas finales a JSON estricto.

JSONC admite comentarios y comas finales. El resto de la sintaxis JSON debe ser válido.

0 / 250.000 unidades UTF-16

Acciones de reparación JSON

Se necesita JavaScript para convertir o reparar JSON en tu navegador.

Resultado

Listo. Elige un modo y ejecuta la operación cuando quieras.

Elige un modo

Usa JSONC a JSON cuando el documento sea JSON con comentarios // o /* ... */, o con comas finales. El convertidor elimina los comentarios y las comas finales y después comprueba que el resultado sea JSON estricto. JSON estricto no admite comentarios, por eso no aparecen en la salida.

Elige Reparar JSON si hay errores comunes adicionales, como cadenas entre comillas simples o nombres de propiedades sin comillas. La reparación usa heurísticas y puede inferir valores o delimitadores ausentes. La entrada se conserva; revisa la salida JSON estricta y sus cambios de texto antes de copiarla.

Ejemplos

Entrada JSONC:

{
  // aquí se permiten comentarios y comas finales
  "name": "Ada",
}

Salida JSON estricta:

{
  "name": "Ada"
}

Entrada para reparar:

{ name: 'Ada', active: true }

Una posible salida JSON estricta:

{"name":"Ada","active":true}

Los ejemplos de salida muestran JSON equivalente con espaciado simplificado. La conversión JSONC sustituye comentarios y comas finales por espacios y conserva los saltos de línea; Reparar puede producir otro espaciado.

Cómo usar el reparador JSON

  1. Pega el texto original en Entrada.
  2. Elige JSONC a JSON o Reparar JSON. JSONC es el modo inicial.
  3. Selecciona Convertir o Reparar para iniciar la operación.
  4. Revisa la salida propuesta, el resumen, las advertencias y cada cambio.
  5. Usa los controles de rango para inspeccionar el texto original o propuesto y copia la salida solo cuando coincida con lo que necesitas.

Escribir y cambiar el modo no ejecutan una operación automáticamente. El resultado se retira cuando cambia la entrada o el modo. Cancelar también conserva intacta la entrada original.

Heurísticas e incertidumbre

Reparar no reconstruye la intención de quien escribió el documento. Si el texto termina a mitad de un valor, el reparador puede inferir null o añadir una comilla, un corchete o una llave de cierre. Son conjeturas: el número, la cadena o el arreglo truncado podrían haber tenido otro valor. Se puede reconocer un bloque Markdown que envuelve un documento, pero no se extraen de forma universal prosa ni varios fragmentos sin relación.

La advertencia permanece visible mientras se selecciona Reparar JSON, incluso si una entrada válida pasa sin cambios. Una operación exitosa indica que el candidato pasó la validación sintáctica JSON estricta; no demuestra que la reparación haya conservado el significado previsto.

Límites y validación

La entrada admite hasta 250.000 unidades UTF-16 y la salida propuesta hasta 500.000. El análisis está limitado a 100 niveles de anidación, 25.000 nodos JSON, 100 diagnósticos y 1.000.000 unidades de trabajo; la comprobación previa de la reparación tiene su propio límite de 1.000.000 unidades. El Worker tiene un límite de cinco segundos. La comparación detallada está limitada a 2.000.000 unidades de trabajo y 1.000 cambios localizados; la verificación lineal de cambios tiene un límite independiente de 4.000.000 unidades. Si no se puede mostrar todo el detalle de forma segura, los cambios pueden agruparse en un rango mayor. Se muestran 50 filas por página y cada vista previa se acorta después de 240 unidades UTF-16. Un error de límite no presenta un candidato parcial como una salida utilizable.

Se rechazan los nombres de propiedad duplicados y la marca de orden de bytes. El validador JSON estricto también puede advertir que un número pierda precisión al representarse en JavaScript. Si aparece esa advertencia, comprueba el texto original de números grandes o muy precisos. Ningún modo promete compatibilidad completa con JSON5 ni recuperar exactamente una entrada dañada.

Procesamiento local y privacidad

La conversión, reparación, validación y comparación de cambios se ejecutan en un Worker del navegador, en tu dispositivo. La herramienta no carga el documento a un servidor de la aplicación ni lo guarda. El portapapeles del navegador se usa solo si solicitas copiar.

Preguntas frecuentes

¿En qué se diferencian JSONC y Reparar JSON?

La conversión JSONC acepta comentarios y comas finales alrededor de JSON que por lo demás es válido. Reparar intenta corregir más errores comunes y puede inferir contenido, por lo que requiere revisar mejor el significado.

¿Es un convertidor completo de JSON5?

No. Admite la sintaxis JSONC documentada y algunos casos de reparación. No promete las características completas de JSON5, como todos sus valores ni su sintaxis numérica.

¿Por qué Reparar no corrige cualquier error?

Un texto malformado puede tener varios significados posibles. La reparación es heurística y acotada; ante una entrada ambigua o no admitida, puede fallar la validación estricta en vez de producir una conjetura.

¿Qué ocurre con los datos truncados?

La reparación puede inferir null o delimitadores de cierre para crear un candidato analizable. No recupera caracteres que faltan; compara el candidato con los datos originales antes de usarlo.

¿Por qué desaparecen los comentarios?

JSON estricto no tiene sintaxis de comentarios. La conversión JSONC los elimina al crear un candidato JSON estricto.

¿Pueden cambiar los números grandes?

JavaScript representa los números JSON con precisión finita. El validador advierte cuando detecta una posible pérdida; conserva el texto original y comprueba el valor con una representación apropiada para tus datos.