// 计算距离
let lat1 = 39.909
let lng1 = 116.39742
let lat2 = this.latitude
let lng2 = this.longitude
uni.getLocation({
type: 'gcj02',
success: res=> {
lat1 = res.latitude
lng1 = res.longitude
this.distance = this.getDistance(lat1,lng1 ,lat2 , lng2);
}
})
getDistance(lat1, lng1, lat2, lng2) {
lat1 = lat1 || 0;
lng1 = lng1 || 0;
lat2 = lat2 || 0;
lng2 = lng2 || 0;
var rad1 = lat1 * Math.PI / 180.0;
var rad2 = lat2 * Math.PI / 180.0;
var a = rad1 - rad2;
var b = lng1 * Math.PI / 180.0 - lng2 * Math.PI / 180.0;
var r = 6378137;
var distance = r * 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(rad1) * Math.cos(rad2) * Math.pow(Math.sin(b / 2), 2)));
return (distance/1000).toFixed(2);
}
评论