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.
JSONC admite comentarios y comas finales. El resto de la sintaxis JSON debe ser válido.
0 / 250.000 unidades UTF-16
Se necesita JavaScript para convertir o reparar JSON en tu navegador.
Diagnósticos
Resultado
Listo. Elige un modo y ejecuta la operación cuando quieras.
Resumen de cambios
- Cambios de texto
- 0
- Insertados
- 0
- Eliminados
- 0
- Reemplazados
- 0
Cambios agrupados; el rango puede incluir texto sin modificar.
Cambios de texto
No hay cambios de texto.
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
- Pega el texto original en Entrada.
- Elige JSONC a JSON o Reparar JSON. JSONC es el modo inicial.
- Selecciona Convertir o Reparar para iniciar la operación.
- Revisa la salida propuesta, el resumen, las advertencias y cada cambio.
- 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.