JavaScript
Node.js
geometry

緯度経度から2地点間の距離 (km) を計算する JavaScript

2地点の緯度経度を指定して距離を km で返す JavaScript 関数

参照 → https://qiita.com/naotarou/items/628952e68fef059c6b1a

function distance(lat1, lng1, lat2, lng2) {
  lat1 *= Math.PI / 180;
  lng1 *= Math.PI / 180;
  lat2 *= Math.PI / 180;
  lng2 *= Math.PI / 180;
  return 6371 * Math.acos(Math.cos(lat1) * Math.cos(lat2) * Math.cos(lng2 - lng1) + Math.sin(lat1) * Math.sin(lat2));
}

地球を(回転楕円体でなく)直径 6,371km の球体としたときの計算らしい。
Google Maps も同じ計算らしい。

試してみる:

distance(35.666863,139.74954,35.663729,139.744047); // => 0.6063721931946154
distance(43.064313,141.347255,35.663729,139.744047); // => 834.321307653742

https://gist.github.com/kawanet/15c5a260ca3b98bd080bb87cdae57230 にも置いておいた。