在很多资料都介绍javascripte 字符串定界符可以是单引号' 或者双引号"都是同样的作用,真的是这样的吗?
下面是so简单的一个html
<!DOCTYPE html>
<html><body><h1>用 JSON 字符串创建对象</h1><p id="demo"></p><script>var json_str = "{'name':'张三','age':25}";obj = JSON.parse(json_str);document.getElementById("demo").innerHTML = '姓名:'+ s.name + ' 年龄:'+ s.age;</script></body>
</html>
我们期待的是这样:
但是实际上是这样:
提示已经报错了。
没有找到官方的标准说明,通过测试发现,在使用javascripte 内置对象JSON.parse()把json字符串转换成javascripte对象时,json字符串里面的key、value应该用双引号作定界符,用单引号是无效的。
因此下面json字符串才能成功换成javascripte对象
var json_str = '{"name":"张三","age":25}';