如何解决JSON.parse()解析错误:Unexpected token i in JSON at position 2?
- 内容介绍
- 文章标签
- 相关推荐
本文共计215个文字,预计阅读时间需要1分钟。
JSON.parse():解析JSON字符串时遇到问题,在位置2处发现了意外的令牌i。错误代码:var res= [{\id\:1,\name\:\liming\},{\id\:2,\name\:\xiaobai\}]; var objRes=JSON.parse(res); console.log(objRes);
正确代码:var res={\id\:1,\name\:\li\};
JSON.parse(): Unexpected token i in JSON at position 2 报错问题
错误代码:
var res = "[{id:1,name:'liming'},{id:2,name:'xiaobai'}]"; var objRes = JSON.parse(res); console.log(objRes)正确代码:
var res = '[{"id":1,"name":"liming"},{"id":2,"name":"xiaobai"}]'; var objRes = JSON.parse(res); console.log(objRes)总结:
在使用JSON.parse的时候,返回来的数据一定是严格的json格式,key值一定要用双引号包起来,否则浏览器就会抛出异常。 另外,对于不标准的json字符串,如第一种示例,使用eval()虽然可以正常解析,但是从安全的角度来讲,一定要谨慎使用eval方法。规范json格式。
本文共计215个文字,预计阅读时间需要1分钟。
JSON.parse():解析JSON字符串时遇到问题,在位置2处发现了意外的令牌i。错误代码:var res= [{\id\:1,\name\:\liming\},{\id\:2,\name\:\xiaobai\}]; var objRes=JSON.parse(res); console.log(objRes);
正确代码:var res={\id\:1,\name\:\li\};
JSON.parse(): Unexpected token i in JSON at position 2 报错问题
错误代码:
var res = "[{id:1,name:'liming'},{id:2,name:'xiaobai'}]"; var objRes = JSON.parse(res); console.log(objRes)正确代码:
var res = '[{"id":1,"name":"liming"},{"id":2,"name":"xiaobai"}]'; var objRes = JSON.parse(res); console.log(objRes)总结:
在使用JSON.parse的时候,返回来的数据一定是严格的json格式,key值一定要用双引号包起来,否则浏览器就会抛出异常。 另外,对于不标准的json字符串,如第一种示例,使用eval()虽然可以正常解析,但是从安全的角度来讲,一定要谨慎使用eval方法。规范json格式。

