![](/img/trans.png)
[英]SyntaxError: JSON Parse error: Unexpected identifier “object”
[英]SyntaxError: JSON Parse error: Unexpected identifier “object” (anonymous function)
我不了解解析文件时出了什么问题:
{ "t": -9.30, "p": 728.11, "h": 87.10 }
JavaScript代码:
<script type="text/javascript">
function check() {
$.get("http://....file.json", function(response, status, xhr) {
if (status == "success") {
var json = JSON.parse(response);
$("#temp").html(json.t + "°");
$("#pressure").html(json.p + " mm hg");
}
if (status == "error") {
$("#temp").html("error");
}
});
}
我收到错误消息:
SyntaxError: JSON Parse error: Unexpected identifier "object"
您的response
很可能已经是一个JavaScript对象,因此不需要进行解析。
删除行var json = JSON.parse(response);
并且您的代码应该可以正常工作。
根据$.ajax
上的jQuery文档( $.get
内部使用的内容):
dataType: ...如果未指定,则jQuery将尝试根据响应的MIME类型来推断它(XML MIME类型将产生XML,在1.4 JSON中将产生JavaScript对象 ...)
因此,您的回应可能已经是一个对象。 当您执行JSON.parse(response)
,您实际上是在做
JSON.parse("[object Object]")
因为JSON.parse
其参数强制转换为字符串 ,并且默认情况下,普通对象将字符串化为[object Object]
。 初始[
导致JSON.parse
期望有一个数组,但随后它阻塞了不适合JSON语法的object
令牌。
删除JSON.parse
行,因为jQuery已经将response
解析为对象。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.