这两者到底有什么区别呢?
这可以很好地工作:
var obj1 = jQuery.parseJSON('{"orderedList": "true"}');
document.write("obj1 "+ obj1.orderedList );
但以下内容不起作用:
var obj2 = jQuery.parseJSON("{'orderedList': 'true'}");
document.write("obj2 "+ obj2.orderedList );
为什么会这样呢?
发布于 2013-01-16 18:00:45
根据API文档,双引号被认为是有效的JSON,而单引号不是。
发布于 2013-05-02 17:19:08
访问www.Jsonlint.com网站并检查您的单引号json字符串,您会发现它不是有效的json字符串。因为双引号json是标准的json格式。
jsonlint.com是一个检查json格式是否正确的网站。
发布于 2016-08-11 13:06:38
您可以使用replace来修复此问题。这对我很有效。
var str = "{'orderedList': 'true'}";
str = str.replace(/\'/g, '\"');
JSON.parse(str);
https://stackoverflow.com/questions/14355655
复制相似问题