Files
jdt-user/src/utils/index.ts

56 lines
1.2 KiB
TypeScript

import { showToast, navigateBack } from "@tarojs/taro";
// 经纬度计算距离
export function calculateDistance(
la1: number,
lo1: number,
la2: number,
lo2: number
): any {
var radLat1 = (la1 * Math.PI) / 180.0;
var radLat2 = (la2 * Math.PI) / 180.0;
var a = radLat1 - radLat2;
var b = (lo1 * Math.PI) / 180.0 - (lo2 * 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;
s = Math.round(s * 10000) / 10000;
return s.toFixed(2) + "km";
}
// 将角度转换为弧度
function toRadians(degrees: number): number {
return (degrees * Math.PI) / 180;
}
// url转对象
interface UrlParams {
type?: string;
gid?: string;
bid?: string;
}
export function parseQueryString(url: string) {
const queryString = url.split("?")[1];
if (!queryString) {
return {};
}
const keyValuePairs = queryString.split("&");
const result: UrlParams = {};
keyValuePairs.forEach((keyValue) => {
const [key, value] = keyValue.split("=");
result[key] = decodeURIComponent(value);
});
return result;
}