0
嘿,我准备了一个项目,其中会计算距离的html5地理位置。我有一个从Javascript中嵌套函数返回值的问题,任何人都可以帮助我吗?无法从Javascript中的嵌套函数返回值
这里是我的代码:
/* DISTANCE CALCULATOR FUNCTION */
function distanceCalc(latitudeB,longitudeB) {
var result;
if (navigator.geolocation) {
navigator.geolocation.watchPosition(showPosition);
}
function showPosition(position) {
calc(position.coords.latitude,position.coords.longitude);
}
function calc(latitudeA,longitudeA) {
var lat1 = latitudeA;
var lon1 = longitude;
var lat2 = latitudeB;
var lon2 = longitudeB;
var R = 6371; // km
var dLat = (lat2-lat1)*Math.PI/180;
var dLon = (lon2-lon1)*Math.PI/180;
var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
Math.cos(lat1*Math.PI/180) * Math.cos(lat2*Math.PI/180) *
Math.sin(dLon/2) * Math.sin(dLon/2);
var c = 2 * Math.asin(Math.sqrt(a));
var d = R * c;
result = d.toFixed(1);
return result;
}
return result;
}
我想这样做
var test = distanceCalc(44.35678,33.78546);
这个代码不工作,返回NaN值
问题与返回值无关。 – Oriol 2015-02-09 16:16:19
您是否试过通过调试器运行它并查看会发生什么? – 2015-02-09 16:16:29
注意事项:应用正确的缩进可以让你的生活更轻松。 – melancia 2015-02-09 16:17:13