面对JS中的全局变量的麻烦

时间:2012-06-05 13:44:12

标签: javascript variables global-variables

以下代码是跟踪用户位置,

var curr_loc; //global varible
function displayLocation(loc) {
    currLat = loc.coords.latitude;
    currLon = loc.coords.longitude;
    curr_loc = currLat + "," + currLon;
    alert(curr_loc); //Displaying latitude and longitude values 
}

function foo() {
    navigator.geolocation.getCurrentPosition(displayLocation);
    alert(curr_loc); //undefined
}
foo();

如何在foo方法中访问位置值。

1 个答案:

答案 0 :(得分:1)

navigator.geolocation.getCurrentPosition(displayLocation)在位置建立之前返回,并且在位置可用时将在某个时间点调用displayLocationcurr_locnavigator.geolocation.getCurrentPosition()返回后的一段时间内未定义displayLocation,因为尚未调用{{1}}。