函数:
//根据经纬度计算两点之间的距离
/**
* @param lat1 第一个地点的纬度
* @param lon1 第一个地点的经度
* @param lat2 第二个地点的纬度
* @param lon2 第二个地点的经度
*/
calculateDistance(lat1, lon1, lat2, lon2) {
const R = 6371; // 地球半径,单位为千米
const dLat = ($lat2 - $lat1) * Math.PI / 180;
const dLon = ($lon2 - $lon1) * Math.PI / 180;
const 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);
const c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
const distance = R * c;
return distance;
}
// 两地的经纬度坐标
const lat1 = 40.7128; // 第一个地点的纬度
const lon1 = -74.0060; // 第一个地点的经度
const lat2 = 34.0522; // 第二个地点的纬度
const lon2 = -118.2437; // 第二个地点的经度
const distance = calculateDistance(lat1, lon1, lat2, lon2);
console.log('两地之间的距离为:' + distance + ' 千米');
下一篇:
uniapp拨打电话号码