Javascript JSON.parse意外的字符错误
我得到这个错误: JSON.parse:意外字符 在firebug中运行此语句时:Javascript JSON.parse意外的字符错误,javascript,json,Javascript,Json,我得到这个错误: JSON.parse:意外字符 在firebug中运行此语句时: JSON.parse({"balance":0,"count":0,"time":1323973673061,"firstname":"howard","userId":5383,"localid":1,"freeExpiration":0,"status":false}); 为什么会这样?JSON字符串对我来说似乎是正确的,我还使用JSHint对其进行了测试。在上述情况下传递的对象是一个服务器响应,其内容类型
JSON.parse({"balance":0,"count":0,"time":1323973673061,"firstname":"howard","userId":5383,"localid":1,"freeExpiration":0,"status":false});
为什么会这样?JSON字符串对我来说似乎是正确的,我还使用JSHint对其进行了测试。在上述情况下传递的对象是一个服务器响应,其内容类型设置为
application/json
您不是在解析字符串,而是在解析已解析的对象:)
只需使用
JSON.stringify()
,就可以确保在将所讨论的对象传递给parse函数之前将其字符串化
更新了下面的行
JSON.parse(JSON.stringify({“balance”:0,“count”:0,“time”:1323973673061,“firstname”:“howard”,“userId”:5383,“localid”:1,“freeExpiration”:0,“status”:false}))代码>
或者,如果JSON存储在某个变量中:
JSON.parse(JSON.stringify(yourJSONobject));
对于OP不正确,但此错误可能是由于字符串使用单引号(”
)而不是双引号(“
)引起的
字符串需要双引号
例如:
给出了错误,而
JSON.parse(`{"myparam": "myString"}`)
没有。请注意myString
周围的引号
相关:我想对第一句话投赞成票,但你为什么要重新解析?@MarcelKorpel,Mathletics:Right.Updated.@Mathletics By all accounts JSON.parse做了一些安全检查。不,太好笑了。我喜欢它。我对data.results(数据是一个JSON对象)没有定义。Stack告诉我通过data=JSON.parse将它变成一个js对象(数据)。但是我得到了JSON.parse意外字符错误。JSON.stringify是老板。
JSON.parse(`{"myparam": 'myString'}`)
JSON.parse(`{"myparam": "myString"}`)