JSON.parse
可以将一个json字符串转化为一个json对象。但是该方法对json字符串的格式要求比较严格,如果json字符串不太规范,转化就会报错。常见错误有两种:
1 json字符串中的key值没有带引号
key值不带引号的json字符串无法使用该方法转化,如下:
{
a:1
}
转化报错如下:
2 json字符串中的key值带的单引号
如果json字符串中的key值带的是单引号,也无法转化,报错相同,如下:
{
'a':1
}
3 规范的json字符串格式
json字符串中所有的key值必须用双引号包裹才能正常转化为json对象。
如下:
{
"a":1,
"b":"string",
"c":[1,2,3]
}
4 不规范json字符串的转化方法
前提是,保证json字符串数据是正确的,只不过是key没有用双引号包围,像上面提到的两点
。然后可以使用eval
函数进行转化,如下:
eval("({a:1})")
eval("({'a':1})")