J'obtiens cette erreur:
JSON.parse: caractère inattendu
quand j'exécute cette instruction dans firebug:
JSON.parse({"balance":0,"count":0,"time":1323973673061,"firstname":"howard","userId":5383,"localid":1,"freeExpiration":0,"status":false});
Pourquoi en est-il ainsi? La chaîne JSON me semble correcte et je l'ai également testée avec JSHint. L'objet transmis dans le cas ci-dessus est une réponse du serveur avec le type de contenu défini surapplication/json
javascript
json
Krishna
la source
la source
Vous pouvez vous assurer que l'objet en question est stringifié avant de le passer à la fonction d'analyse en utilisant simplement
JSON.stringify()
.Mise à jour de votre ligne ci-dessous,
JSON.parse(JSON.stringify({"balance":0,"count":0,"time":1323973673061,"firstname":"howard","userId":5383,"localid":1,"freeExpiration":0,"status":false}));
ou si vous avez JSON stocké dans une variable:
la source
Ce n'est pas vrai pour l'OP, mais cette erreur peut être provoquée en utilisant des guillemets simples (
'
) au lieu de double ("
) pour les chaînes.La spécification JSON nécessite des guillemets doubles pour les chaînes.
Par exemple:
donne l'erreur, alors que
ne fait pas. Notez les guillemets autour
myString
.En relation: https://stackoverflow.com/a/14355724/1461850
la source