2015-04-08 55 views
-2

我無法從函數locpos的值返回到其下一個函數initialize。 功能POS給我目前的經度和緯度,我想在下一個JavaScript函數初始化中使用這些值。運行初始化函數pos的值不確定。將javascript中的一個函數的值返回到同一頁面中的下一個javascript函數

function loc() { 
      navigator.geolocation.getCurrentPosition(function(position) { 
      pos = new google.maps.LatLng(position.coords.latitude,position.coords.longitude); 
      return pos; 
      }); 

      } 


    function initialize() { 
      var x = loc(); 
      alert(x); 
     centralLocation = new google.maps.LatLng(40.6940741,-73.9869325); 
     var request = { 
      location: centralLocation, 
      types: ['clothing_store'], 
      rankBy: google.maps.places.RankBy.DISTANCE 
     }; 

google.maps.event.addDomListener(window, 'load',initialize); 

如何使用POS機的價值在我的初始化函數在var centrallocation即我想通過POS的值var centrallocation作爲參數。

+0

不要將JavaScript標記爲Java。他們是非常不同的 – Downgoat

回答

0

它是undefined,因爲getCurrentPosition是異步的。你應該把你的邏輯放在getCurrentPosition的地方

function initialize() { 
    navigator.geolocation.getCurrentPosition(function(position) { 
     pos = new google.maps.LatLng(position.coords.latitude,position.coords.longitude); 

     centralLocation = new google.maps.LatLng(40.6940741,-73.9869325); 
     var request = { 
      location: centralLocation, 
      types: ['clothing_store'], 
      rankBy: google.maps.places.RankBy.DISTANCE 
     }; 

    }); 
} 
相關問題