如何返回函数内部的javascript函数之外的变量?
所以我
function find_coord(lat, lng) {
var smart_loc;
var latlng = new google.maps.LatLng(lat, lng);
geocoder = new google.maps.Geocoder();
geocoder.geocode( { 'latLng': latlng }, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
smart_loc = new smart_loc_obj(results);
} else {
smart_loc = null;
}
});
return smart_loc;
}
想返回 smart_loc 变量/对象,但它始终为 null,因为函数的范围(结果、状态)未达到 find_coord 函数中声明的 smart_loc。那么如何获取函数内部的变量(结果、状态)呢?
So I have
function find_coord(lat, lng) {
var smart_loc;
var latlng = new google.maps.LatLng(lat, lng);
geocoder = new google.maps.Geocoder();
geocoder.geocode( { 'latLng': latlng }, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
smart_loc = new smart_loc_obj(results);
} else {
smart_loc = null;
}
});
return smart_loc;
}
I want to return the smart_loc variable/object but it is always null because the scope of the function(results, status) doesn't reach the smart_loc declared in the find_coord function. So how do you get a variable inside the function(results, status) out?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以这样做:
或者如果您需要在 smart_loc 更改时运行函数:
然后调用:
You can do:
Or if you need to run a function when smart_loc changes:
then call: