1

我正在尝试检索一些特定的数据,使用 jQuery 来检索 JSON 提要。

这就是我目前正在做的事情:

var url  = 'https://api.wunderground.com/api/myapicode/conditions/forecast/q/Tokyo.json?callback=?';

$.getJSON(url, function(d){
    var data = d['current_observation'];
    console.dir(data['display_location']);
});

这成功返回到控制台:

city ==> "Tokyo"
country ==> "JP"
country_iso3166 ==> "JP"
elevation  ==> "8.00000000"
full ==> "Tokyo, Japan"
latitude ==> "35.54999924"
etc...

但是,假设我只想获得“完整”名称。如果我尝试:

  console.dir(data['display_location']['full']);

我最终得到结果:There are no child objects

关于我在这里做错了什么的任何想法?

4

4 回答 4

6

console.dir显示您传递给它的对象的属性(子对象)。
用字符串调用它是没有意义的。

你应该打电话console.log

于 2012-08-27T18:16:51.773 回答
1

您应该使用console.log()来获取值而不是对象的属性。

于 2012-08-27T18:17:41.837 回答
1

console.dir将显示对象树 - 您传入的对象的属性。然而,您记录的属性只是一个字符串,没有子对象。改为使用console.log

于 2012-08-27T18:17:47.670 回答
1

为了使用console.dir(arg)arg 应该是一个对象。您正在访问一个full对象的键,console.dir(data['display_location']['full']);其中是一个纯字符串。console.log(data['display_location']['full'])改为使用

于 2012-08-27T18:31:22.247 回答