微信小程序 根据两个坐标点计算出两点之间的距离
核心代码:
//进行经纬度转换为距离的计算function Rad(d){return d * Math.PI / 180.0;//经纬度转换成三角函数中度分表形式。}/*计算距离,参数分别为第一点的纬度,经度;第二点的纬度,经度默认单位km*/export function getMapDistance(lat1,lng1,lat2,lng2) {var radLat1 = Rad(lat1);var radLat2 = Rad(lat2);var a = radLat1 - radLat2;var b = Rad(lng1) - Rad(lng2);var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a/2),2) +Math.cos(radLat1)*Math.cos(radLat2)*Math.pow(Math.sin(b/2),2)));s = s *6378.137 ;// EARTH_RADIUS;s = Math.round(s * 10000) / 10000; //输出为公里//s=s.toFixed(2);return s;}
调用:
const distance = getMapDistance(30.722558975219727,111.33262634277344,30.791611,111.310880);
距离:
console.log(`distance:${distance}`)// distance:7.9619
腾讯地图实测距离:

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
