在Javascript中解析JSON的问题

Problems with parsing JSON in Javascript

本文关键字:JSON 问题 Javascript      更新时间:2023-09-26

我将此变量strJSON传递到客户端页面。此变量包含以下数据:

[{"firstName":"Michael","lastName":null,"emails":["John@gmail.com"]},
 {"firstName":null,"lastName":null,"emails":["Michael@gmail.ru"]},
 {"firstName":"Olga","lastName":null,"emails":["mailOlga@gmail.com"]}]

我试图将Json解析为JavaScript对象:

var parsedJSON = JSON.parse(strJSON);

但在上面的一行中,我得到了这个错误:

SyntaxError: JSON.parse: expected property name or '}' at line 1 column 3 of the JSON data

我认为我会出错,因为JSON必须用单引号,所以在解析JSON之前,我会这样做:

strJSON= "'" + str + "'";

但在我添加了上面的行之后,我在这一行中:

var parsedJSON = JSON.parse(strJSON);

我得到这个错误:

SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data

知道我做错了什么吗?提前谢谢。

首先字符串化json,然后解析:

var str=[{"firstName":"Michael","lastName":null,"emails":["John@gmail.com"]},
 {"firstName":null,"lastName":null,"emails":["Michael@gmail.ru"]},
 {"firstName":"Olga","lastName":null,"emails":["mailOlga@gmail.com"]}];
var parsedJSON = JSON.parse(JSON.stringify(str));
console.log(parsedJSON);