Javascript 正在尝试使用下划线解析JSON(Chrome上的意外标记)
您好,我正在尝试了解Underline.js 我有一个json文件,如下所示:Javascript 正在尝试使用下划线解析JSON(Chrome上的意外标记),javascript,html,ajax,json,underscore.js,Javascript,Html,Ajax,Json,Underscore.js,您好,我正在尝试了解Underline.js 我有一个json文件,如下所示: [ { "name":"rocky", "last-updated": "Yesterday", "age":"32" }, { "name":"annie", "last-updated": "Today", "age":"31" } ] 和一个javascript函数: function getNames() { var users =
[
{
"name":"rocky",
"last-updated": "Yesterday",
"age":"32"
},
{
"name":"annie",
"last-updated": "Today",
"age":"31"
}
]
和一个javascript函数:
function getNames() {
var users = $.ajax({
url : "users.json",
async : false
});
var names = _.map(JSON.parse(users.responseText),
function(user) {
return user.name
});
return names;
}
它在IE上运行良好,但在Chrome上,它让我感到:
Uncaught SyntaxError: Unexpected token ,
在这一行:
var names = _.map(JSON.parse(users.responseText),function(user) {return user.name});
据我所知,这个错误是因为试图解析对象而不是JSON字符串。我说得对吗?我如何解决这个问题?对IE有用吗
谢谢大家! 原来问题出在url参数上
url : "users.json"
url: "/users.json"
Chrome引发的错误:
Uncaught SyntaxError: Unexpected token ,
经过一个小时的故障排除,我发现:
Chrome在缓存GET请求时存在错误。
它可以通过设置来固定
cache: false
在我的Ajax电话
创建一个目录并在url上调用该目录似乎也很有效
url : "json/users.json"
感谢那些试图帮助我的人。我认为json的开始和结束括号在
{}
和[]
中,在数组中,ats不下划线那是连字符!避免-钥匙上的字符s@gwillie:我在json文件中将[]替换为{},仍然相同error@meda:你是说地图?我相信这是事实!