Un objeto JSON puede parecer correcto a simple vista y aun así fallar al cargar una configuración o responder desde una API. La forma más rápida de encontrar el problema es validar el documento completo y leer la línea y columna del error, pero reconocer los patrones habituales te permite corregirlo en segundos.
1. Comas finales
JSON no acepta una coma después del último elemento de un objeto o array. Esto es válido:
{"nombre": "Ana", "activo": true}La versión con una coma después de true no es JSON estándar. Algunos lenguajes toleran esa coma en sus propios objetos, pero JSON.parse() no la acepta.
2. Comillas simples
Tanto las claves como los textos deben usar comillas dobles. Cambia {'nombre': 'Ana'} por {"nombre": "Ana"}. Las comillas simples pueden formar parte del valor, pero no delimitan una cadena JSON.
3. Claves sin comillas
En JavaScript puedes escribir {nombre: "Ana"} en algunos contextos. En JSON, la clave siempre debe estar entre comillas dobles: {"nombre": "Ana"}.
4. Comentarios y valores no válidos
JSON estándar no permite comentarios // o /* ... */. Tampoco acepta undefined, NaN ni valores como Infinity. Usa null cuando necesites representar la ausencia de un valor y comprueba que los números estén escritos con la sintaxis JSON.
Una rutina rápida para depurar
- Formatea el contenido para ver la estructura.
- Valida y salta directamente a la línea indicada.
- Revisa la coma o las comillas alrededor de ese punto.
- Vuelve a minificar solo cuando el JSON ya sea válido.