Skip to content
A simple haversine formula module for Node.js
Branch: develop
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
test Add support for {lat, lng} format (#19) Jan 7, 2019
.eslintrc
.gitignore Add support for browsers Feb 14, 2015
.npmignore first commit Jan 18, 2013
Changelog.md
Makefile Add updated tests utilizing mocha Jan 9, 2014
README.md
haversine.js Add support for {lat, lng} format (#19) Jan 7, 2019
package.json Bump to 1.1.1 (#20) Jan 7, 2019

README.md

Haversine

A simple haversine formula module for Node.js

Installation

$ npm install haversine

Usage

haversine (start, end, options)

const haversine = require('haversine')

const start = {
  latitude: 30.849635,
  longitude: -83.24559
}

const end = {
  latitude: 27.950575,
  longitude: -82.457178
}

console.log(haversine(start, end))
console.log(haversine(start, end, {unit: 'mile'}))
console.log(haversine(start, end, {unit: 'meter'}))
console.log(haversine(start, end, {threshold: 1}))
console.log(haversine(start, end, {threshold: 1, unit: 'mile'}))
console.log(haversine(start, end, {threshold: 1, unit: 'meter'}))

api

  • options.unit - Unit of measurement applied to result (default km, available km, mile, meter, nmi)
  • options.threshold - If passed, will result in library returning boolean value of whether or not the start and end points are within that supplied threshold. (default null)
  • options.format - The format of start and end coordinate arguments. See table below for available values. (default null)
Format Example
undefined (default) { latitude: 30.849635, longitude: -83.24559] }
[lat,lon] [30.849635, -83.24559]
[lon,lat] [-83.24559, 30.849635]
{lon,lat} { lat: 30.849635, lon: -83.24559] }
{lat,lng} { lat: 30.849635, lng: -83.24559] }
geojson { type: 'Feature', geometry: { coordinates: [-83.24559, 30.849635] } }

MIT License

You can’t perform that action at this time.