Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JavaScript中解析JSON会导致SyntaxError:意外标记_Javascript_Json_Parsing - Fatal编程技术网

在JavaScript中解析JSON会导致SyntaxError:意外标记

在JavaScript中解析JSON会导致SyntaxError:意外标记,javascript,json,parsing,Javascript,Json,Parsing,所以我一直在尝试用javascript解析JSON,但没有成功 所以打印我的JSON对象body(我从服务器端读取),它如下所示 { "key1": "value1", "results": [ { "key2":"value2", "key3": "value3" } ] } 每当我试图解析它时(见下文),我总是以错误SyntaxError:Unexpected token co

所以我一直在尝试用javascript解析JSON,但没有成功

所以打印我的JSON对象
body
(我从服务器端读取),它如下所示

{
    "key1": "value1",
    "results": 
    [
        {
            "key2":"value2",
            "key3": "value3"
        }
    ]
}
每当我试图解析它时(见下文),我总是以错误
SyntaxError:Unexpected token

console.log('results: ', JSON.parse(body).results)
console.log('results: ', JSON.parse(body)['results'])
我在这里检查了类似的问题,还尝试了其他不同的方法(如下面的方法),但结果总是没有定义

console.log('results: ', body.results)
console.log('results: ', body['results'])

console.log('results: ', JSON.stringify(body).results)
console.log('results: ', JSON.stringify(body)['results'])

console.log('results: ', JSON.parse(JSON.stringify(body)).results)
console.log('results: ', JSON.parse(JSON.stringify(body))['results'])

有什么建议吗?

一些观察结果:

  • 由于您已经有了
    JSON对象
    ,因此无需再次解析它
  • 您可以直接使用
    body.results
    JSON.parse(body.results)的intead
  • 首先,试着理解概念和概念

    演示

var body={
“键1”:“值1”,
“结果”:
[
{
“键2”:“值2”,
“键3”:“值3”
}
]
};
log('results:',body.results);
用于(主体中的var i.results){
console.log(body.results[i].key2);

}
问题出在我收到的JSON中。它是手工构建的,几乎没有问题。因为我正在处理一个现有的项目(不是我从头开始的项目),所以我并不认为JSON生成本身存在缺陷


我曾经构建我的json,它工作得很好

“它看起来像下面的”“像什么”?它实际上是什么样子的?因为您发布的是有效的JSON,不会导致您描述的错误。显示
body
声明。另外:意外标记是什么?错误告诉你。例如,它是不是碰巧是
u
?如果是的话。有关搜索的详细信息。如何获取
正文
?我猜它不是你想象的那样。JSON是有效的,这个
JSON.parse(body.results
是有效的方法。所以问题在别处。给我们看更多的代码。。。