我正在尝试将地理位置存储在函数范围之外的一些变量中,js [重复]
Posted
技术标签:
【中文标题】我正在尝试将地理位置存储在函数范围之外的一些变量中,js [重复]【英文标题】:I'm trying to store the geolocation in some variables outside of the functions scope, js [duplicate] 【发布时间】:2018-04-05 23:54:07 【问题描述】:我想存储地理位置,但是当我将纬度和经度存储在范围之外的变量中时,它们不会存储。有谁知道为什么会这样?我也尝试过使用未定义的变量,但也没有用。
这是我的代码:
$(document).ready(function()
var location = lat:'', lon:'';
function updateLocation()
if(navigator.geolocation)
navigator.geolocation.getCurrentPosition(function(position)
location.lat = position.coords.latitude;
location.lon = position.coords.longitude;
);
updateLocation();
$("#data").html("lat: " + location.lat + " lon: " + location.lon);
);
【问题讨论】:
【参考方案1】:您的代码存在 2 个大问题:
您尝试在定义函数之前调用updateLocation
。 updateLocation
定义在 $(document).ready
内部,而调用发生在外部。请仅在文档准备好后执行所有操作。
location
是为window.location
保留的名称。虽然可以使用该名称,但强烈建议更改该变量名称以避免混淆和错误行为。
【讨论】:
以上是关于我正在尝试将地理位置存储在函数范围之外的一些变量中,js [重复]的主要内容,如果未能解决你的问题,请参考以下文章