一,场景:
字符串转对象;
var str = "{'bankRate':5,'YINGUO':0}"
二,操作:
JSON.parse(str)时候,报错
[Vue warn]: Error in render: "SyntaxError: Unexpected token ' in JSON at position 1"
三,原因:
使用parse这个方法,要求很严格,必须是json的k和value都用双引号包起来;
ex:"{"bankRate":5,"YINGUO":0}"
四,解决方案:不用parse,选择用eval()
eval('(' + str + ')')
注意需要在json字符外包裹一对小括号
注:ie8(兼容模式),ie7和ie6也可以使用eval()将字符串转为JSON对象,但不推荐这些方式,这种方式不安全eval会执行json串中的表达式。