js 中計算兩個坐標點之間的距離
// 兩點間距離lat1, lng1, lat2, lng2 api.getMapDistanceApi = (paramObj)=> { // console.log(paramObj) var lng1 = paramObj.lng1 var lat1 = paramObj.lat1 var lng2 = paramObj.lng2 var lat2 = paramObj.lat2 var radLat1 = lat1*Math.PI / 180.0; var radLat2 = lat2*Math.PI / 180.0; var a = radLat1 - radLat2; var b = lng1*Math.PI / 180.0 - lng2*Math.PI / 180.0; 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 * 1000 if (isNaN(s)) { return 0+'m'; } if (s > 1000) { // 大於1000米時 s = Math.floor(s/1000 * 100) / 100; s = s + 'km' } else { // 小於1000米直接返回 s = s + 'm' } return s; }