+
95
-

js如何自定义数组排序找出距离最近的?

js如何自定义数组排序找出距离最近的?


网友回复

+
15
-

我们假设js中一个数组有每个地点的经纬度,我们制定一个地点的经纬度,来对数组中的与这个点的距离长短进行排序,可以使用以下步骤:

1、计算每个地点到目标点的距离。

2、创建一个包含地点和对应距离的对象数组。

3、使用比较函数对这个对象数组进行排序。

4、提取排序后的地点数组。

以下是一个示例代码,演示如何在JavaScript中实现这个过程:

// 计算两点之间的距离(使用经纬度)
function 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 /...

点击查看剩余70%

我知道答案,我要回答