我对JSON很困惑,我可以很容易地获得第一级数组值,但是subs有问题。
我正在使用$.getJSON,代码是
$.getJSON('http://www.authenticjobs.com/api/?api_key=4c4f1d5934d66ca872dfa2a0cfd3a20b&method=aj.jobs.search&perpage=3&format=json&callback=?', function(data) {
var listings = "";
$.each(data.listings.listing, function(index, listing) {
listings += "<li><strong>" + listing.company.name + "</strong> needs a <a href='" + listing.url + "'>" + listing.title + "</a>";
if (listing.location != "") {
listings += " in " + listing.location;
}
listings += "</li>";
});
$("#authentic-jobs ul").append(listings);
});可视化数据在这里:http://cloud.ignatynikulin.com/2v0F2p2x111r0X3k4441
我找不到公司的地址。
我尝试过listing.company.location.name,但它不起作用,也没有任何意义。
谢谢!
答案是(谢谢GregL):
因为listing.company.location是一个嵌套对象(在您所附的图片中由{}可视化),所以您只想检查该对象是否像未定义的、空的或类似的(在Javascript中称为"falsey值“)。
发布于 2012-02-21 09:43:17
我想我创建了一个工作在jsFiddle上的这里。
关键是要使用:
if (listing.company.location) {
listings += " in " + listing.company.location.name;
}https://stackoverflow.com/questions/9375145
复制相似问题