Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

haversine

niix197.2kMIT1.1.1TypeScript support: definitely-typed

A simple haversine module

haversine, distance, coordinates, geolocation

readme

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]
{lat,lon} { lat: 30.849635, lon: -83.24559] }
geojson { type: 'Feature', geometry: { coordinates: [-83.24559, 30.849635] } }

MIT License

changelog

0409bb1 (HEAD -> release/1.1.1, origin/release/1.1.1) Bump to 1.1.1 b32bd67 (tag: v1.1.1, origin/master, origin/develop, origin/HEAD, master, develop) Add support for {lat, lng} format (#19) b99cf10 Remove bower (#17) 1b78b65 Bump to 1.1.0 ee38b2f (tag: v1.1.0) Add format option (#16) aaaa268 Update readme 8055e23 Bump to version 1.0.2 a2221fd (tag: v1.0.2) Add nautical mile unit (#12) 842623d Merge pull request #11 from njj/clean-up fafab18 Bump to version 1.0.1 633b91a Update readme a2da83d Add eslint c31d4ac Add support for meters e9bcfce Merge pull request #8 from thaiphan/develop 2ec0a33 Add support for browsers 9030414 Merge pull request #7 from benharold/fixTests 7043d28 fix unit tests for haversine function 3688f3e Merge pull request #6 from niix/km-default cea97a4 Make km default 3c9292b Merge pull request #5 from ktilcu/master 35ee6b8 This is the measurement for one mile. 3f487d2 Merge pull request #4 from ktilcu/master 5d34dd8 Fix spelling error in README e0fab8b Add updated tests utilizing mocha b077896 Remove trailing spaces 8383cc5 Update README.md 413e1a6 Updated version c00d6d9 Adjusted threshold return, thanks to @niggler 36d7f85 Updated version 1286f90 Added threshold option 742bf10 updated version 7883ec5 Update README.md e8d67fc Merge pull request #1 from jimbru/fix_mocha_leaks 46b5292 Fix leak error in Mocha. 323d013 Update README.md 52f8650 first commit