坐标返回地址的回调函数如何写?
function address(lat,lng){
request('https://maps.googleapis.com/maps/api/geocode/json?latlng='+ lat +','+ lng +'&sensor=false', function (error, response, data) {
if (!error && response.statusCode == 200) {
//var dd = JSON.stringify(data);
//console.log(data);
var result = JSON.parse(data);
var dd = JSON.stringify(result);
//console.log(result);
var address = result.results[0].formatted_address;
console.log(address)
return address;
}
})}
console.log(address(22.333,113.5555));
4 回复
要么深层嵌套要么讲结果处理函数当作参数传递给address(其实就是深层嵌套),要么用async控制流程
好的。谢谢。
就一个异步操作,没必要用 async
function address(lat, lng, callback) {
...
callback && callback(address);
}
这个就是传递处理函数给address了啊,有什么办法能让request的结果同步返回么,用async.series
搞不定,只能把处理函数放在async里面