为什么我无法在 Google Chrome 控制台中解析此 json 数据
Why can't I parse this json data in Google Chrome console
我在 chrome 控制台中输入这个
var data = [
{
"name":"john doe",
"birth":"09/07/15"
},
{
"name":"jane doe",
"birth":"09/07/15"
}
];
JSON.parse([data[0]);
但我收到错误
Uncaught SyntaxError: Unexpected token o
at Object.parse (native)
为什么?
根据 MDN docs JSON.parse()
将 string
作为参数。
在您的示例中,您正在传递一个对象 -- 这就是您收到错误的原因。
事实上,JSON.parse()
returns一个对象,所以传递一个对象给它是完全没有意义的。
JSON 对象的解析函数需要一个字符串。
您可以将 JSON 对象转换为字符串,然后对其进行解析。
var data = [{
"name":"john doe",
"birth":"09/07/15"
},
{
"name":"jane doe",
"birth":"09/07/15"
}];
var object = JSON.stringify(data[0]);
JSON.parse(object);
我在 chrome 控制台中输入这个
var data = [
{
"name":"john doe",
"birth":"09/07/15"
},
{
"name":"jane doe",
"birth":"09/07/15"
}
];
JSON.parse([data[0]);
但我收到错误
Uncaught SyntaxError: Unexpected token o at Object.parse (native)
为什么?
根据 MDN docs JSON.parse()
将 string
作为参数。
在您的示例中,您正在传递一个对象 -- 这就是您收到错误的原因。
事实上,JSON.parse()
returns一个对象,所以传递一个对象给它是完全没有意义的。
JSON 对象的解析函数需要一个字符串。
您可以将 JSON 对象转换为字符串,然后对其进行解析。
var data = [{
"name":"john doe",
"birth":"09/07/15"
},
{
"name":"jane doe",
"birth":"09/07/15"
}];
var object = JSON.stringify(data[0]);
JSON.parse(object);