0
我使用此代碼來計算兩個gps位置之間的距離。問題是當我返回計算值時它返回未定義的值。請幫我在jquery函數中返回未定義的值
function calcDistane(offerID,userLocation){
var dist;
var adapter = new LocationAdapter();
adapter.selectByOfferId(offerID,function(res){
navigator.geolocation.getCurrentPosition(function(position){
var R = 6371;
var userLocation= position.coords;
dist= Math.acos(Math.sin(userLocation.latitude)*Math.sin(res.item(0).lt) +
Math.cos(userLocation.latitude)*Math.cos(res.item(0).lt) *
Math.cos(userLocation.longitude-res.item(0).lg)) * R;
});
});
return dist;
};
您可以設置dist'的'值傳遞給調用'navigator.geolocation.getCurrentPosition功能( )'並在該呼叫之後立即返回'dist'。如果'getCurrentPosition()'是異步的,那麼返回它時不會設置'dist'。 –