Comillas simples en JSON
JSON exige comillas dobles para los nombres de las claves y para los valores de tipo string. Las comillas simples son comunes en JavaScript, pero no en JSON estricto.
Ejemplo incorrecto
{
'usuario': 'ana',
'activo': true
}Ejemplo corregido
{
"usuario": "ana",
"activo": true
}Por qué falla
Falla porque el parser de JSON espera una comilla doble al empezar una clave o un string. Una comilla simple se interpreta como un carácter inesperado.
Cómo solucionarlo
Cambia las comillas simples por comillas dobles en claves y strings. Si el texto contiene comillas dobles dentro del valor, escápalas con una barra invertida.
Puedes pegar el resultado en Validar JSON online para comprobarlo.
Cómo evitarlo
Cuando copies objetos desde JavaScript, revisa que no hayas pegado sintaxis de código en lugar de JSON puro.
Errores relacionados
Una coma antes de cerrar un objeto o array no es válida en JSON estricto.
Un token inesperado suele indicar un carácter fuera de lugar o una estructura incompleta.
Las claves de objeto deben ir entre comillas dobles, aunque en JavaScript puedan omitirse.
JSON no admite comentarios // ni /* */ dentro del contenido.
Preguntas frecuentes
¿Puedo usar comillas simples dentro de un texto?
Sí, dentro de un string delimitado por comillas dobles: "It's ok".
¿JSON5 permite comillas simples?
JSON5 sí, pero JSON estándar no. Para máxima compatibilidad usa JSON estricto.