异步请求的回调函数

时间:2015-04-13 20:36:29

标签: javascript asynchronous

以下代码从纬度/经度坐标获取状态。如何从匿名函数的范围中提取值“result.body.region”并在更高的范围内使用它?

latitude=tweets[0].latitude
longitude=tweets[0].longitude
var Request = unirest.get("https://montanaflynn-geocoder.p.mashape.com/reverse?latitude="+myobj.latitude+"&longitude="+myobj.longitude)
    .header("X-Mashape-Key", "xxxxxxxxxxxxxxxxxxx")
    .header("Accept", "application/json")
    .end(function (result) {

        state = result.body.region


  });

我想要做的是编写一个回调函数,它将等待异步请求完成并在不同的范围内使用该信息。我在javascript上自学,所以我很难理解回调。我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

您已经拥有的代码将会这样做。

您可能在回调被触发之前尝试读取state的值。

这就是我们通常将代码放在回调中处理数据的原因:确保它在异步事件发生后运行。