2010-10-31 1 views
3

Я пытаюсь разобрать ответ JSON с использованием jquery из last.fm и получить значения долготы и широты. Часть JSON, который содержит эти значения выглядит следующим образом:Как разобрать JSON как geo: point?

"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 "не работает. Как получить эти значения с помощью «:»?

ответ

6

Вы можете использовать bracket notation когда идентификаторы не могут быть выражены в dot notation, было бы выглядеть следующим образом:

item.venue.location["geo:point"]["geo:lat"] 

Для иллюстрации, все эти способы доступа то же самое:

obj.thing.prop 
obj.thing["prop"] 
obj["thing"]["prop"] 
obj["thing"].prop