<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<script>
/**
40.847732,120.126663
40.847714,120.126882
40.847415,120.126606
40.847393,120.126826
**/
var FINAL = 6378137.0
/**
* 求某个经纬度的值的角度值
* @param {Object} d
*/
function calcDegree(d){
return d*Math.PI/180.0 ;
}
/**
* 根据两点经纬度值,获取两地的实际相差的距离
* @param {Object} f 第一点的坐标位置[latitude,longitude]
* @param {Object} t 第二点的坐标位置[latitude,longitude]
*/
function calcDistance(f,t){
var flat = calcDegree(f[0]) ;
var flng = calcDegree(f[1]) ;
var tlat = calcDegree(t[0]) ;
var tlng = calcDegree(t[1]) ;
var result = Math.sin(flat)*Math.sin(tlat) ;
result += Math.cos(flat)*Math.cos(tlat)*Math.cos(flng-tlng) ;
return Math.acos(result)*FINAL ;
}
window.alert("东西: "+calcDistance(
[40.847726,120.126663],[40.84771,120.126885]));
window.alert("南北: "+calcDistance(
[40.847726,120.126663],[40.847417,120.126601]));
window.alert("面积: "+calcDistance(
[40.847726,120.126663],[40.847417,120.126601])*calcDistance(
[40.847726,120.126663],[40.84771,120.126885])/666.66666666667);
</script>
</head>
<body>
</body>
</html>