//由坐标获取地名
function getAddress(lng,lat) {
var point = new BMap.Point(lng,lat);
var gc = new BMap.Geocoder();
var address = null;
gc.getLocation(point, function(rs) {
var addComp = rs.addressComponents;
address = addComp.province+addComp.city + addComp.district + addComp.street + addComp.streetNumber;
alert(address);
});
alert(address);
}
gc.getLocation中的address有值,而外部的address却为null,为什么?百思不得其解.
Javascript 以函数为参数的问题,求大神指点!
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- Go 旅城通票 2017-05-11 12:37关注
异步的,没有执行address = addComp.province+a。。。这句都已经执行你最后的alert语句了,你要得到正确的地址得以回掉形式来调用
function getAddress(lng,lat,callback) { var point = new BMap.Point(lng,lat); var gc = new BMap.Geocoder(); var address = null; gc.getLocation(point, function(rs) { var addComp = rs.addressComponents; address = addComp.province+addComp.city + addComp.district + addComp.street + addComp.streetNumber; callback(address);////////////// }); //alert(address); } getAddress('xxxxxxx','xxxxxxx',function(addr){ alert(addr) })
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥30 这是哪个作者做的宝宝起名网站
- ¥60 版本过低apk如何修改可以兼容新的安卓系统
- ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
- ¥50 有数据,怎么建立模型求影响全要素生产率的因素
- ¥50 有数据,怎么用matlab求全要素生产率
- ¥15 TI的insta-spin例程
- ¥15 完成下列问题完成下列问题
- ¥15 C#算法问题, 不知道怎么处理这个数据的转换
- ¥15 YoloV5 第三方库的版本对照问题
- ¥15 请完成下列相关问题!