不是全局变量?

时间:2017-07-19 05:10:10

标签: javascript variables geolocation global

全局变量在通过函数时不会改变,为什么?

var userLat = 0;
var userLong = 0;

if (navigator.geolocation) {
  navigator.geolocation.getCurrentPosition(function(position) {
    userLat = position.coords.latitude;
    userLong = position.coords.longitude;
  });
}
$("#loc").html(userLat + "<br>" + userLong);

提前致谢。

1 个答案:

答案 0 :(得分:0)

因为navigator.geolocation.getCurrentPosition是异步函数(就像ajax调用一样)。 技术上$("#loc").html(userLat + "<br>" + userLong);在响应可用之前执行。