我正在尝试使用来自last.fm的jquery解析JSON响应并获取经度和纬度值。保存这些值的JSON部分如下所示:
"location":{"geo:point":{"geo:lat":"58.409901","geo:long":"15.563306"}
我得到的代码是:
$.getJSON("http://ws.audioscrobbler.com/2.0/?method=artist.getevents&artist=familjen&api_key=xformat=json&callback=?",
function(data){
$.each(data.events.event, function(i,item){
$("#menucontent").append("<br/>"+item.title + " " + item.venue.location.geo:point.geo:lat);
});
});
显然,“item.venue.location.geo:point.geo:lat”这一部分不起作用。如何使用“:”获取这些值?
答案 0 :(得分:6)
当标识符无法在bracket notation中表示时,您可以使用dot notation,它看起来像这样:
item.venue.location["geo:point"]["geo:lat"]
为了说明,所有这些都是访问相同内容的方法:
obj.thing.prop
obj.thing["prop"]
obj["thing"]["prop"]
obj["thing"].prop