Я получаю такую ошибку:
JSON.parse: неожиданный символ
когда я запускаю этот оператор в firebug:
JSON.parse({"balance":0,"count":0,"time":1323973673061,"firstname":"howard","userId":5383,"localid":1,"freeExpiration":0,"status":false});
Почему это так? Строка JSON мне кажется правильной, и я также протестировал ее с помощью JSHint. Переданный объект в приведенном выше случае является ответом сервера с типом содержимого, установленным наapplication/json
javascript
json
Кришна
источник
источник
Вы можете убедиться, что объект, о котором идет речь, преобразован в строку, прежде чем передавать его функции синтаксического анализа, просто используя
JSON.stringify()
.Обновил вашу строку ниже,
JSON.parse(JSON.stringify({"balance":0,"count":0,"time":1323973673061,"firstname":"howard","userId":5383,"localid":1,"freeExpiration":0,"status":false}));
или если у вас есть JSON, хранящийся в какой-либо переменной:
источник
Не верно для OP, но эта ошибка может быть вызвана использованием одинарных кавычек (
'
) вместо double ("
) для строк.Спецификация JSON требует двойных кавычек для строк.
Например:
дает ошибку, тогда как
не. Обратите внимание на кавычки вокруг
myString
.Связанный: https://stackoverflow.com/a/14355724/1461850
источник