array-binarysearch

0.2.9 • Public • Published

Get index of value in sorted array.

Use binarySearch.closest, if index of closest value is needed.
Use binarySearch.first, if index of first value is needed.
Use binarySearch.last, if index of last value is needed.

const binarySearch = require('array-binarysearch');
// binarySearch(<array>, <value>, [compare function], [this], [begin=0], [end])
// -> <index of value> | ~<index of closest value>
 
binarySearch([21, 42, 91, 91], 42);
// 1
binarySearch([21, 42, 91, 91], 42, null, null, 2);
// -3 (-ve => not found, closest: ~(-3) = 2)
binarySearch([21, 42, 91, 91], 91, null, null, 2, 4);
// 3
 
binarySearch([21, 42, 91, 91], 42, (a, b) => a===b? 0:(a<b? -1:1));
// 1
binarySearch(['G', 'KG', 'KG', 'MG'], 'g', (a, b, i) => a.toLowerCase().localeCompare(b.toLowerCase()), null, 1);
// -2 (-ve => not found, closest: ~(-2) = 1)
binarySearch(['G', 'KG', 'KG', 'MG'], 'KG', (a, b, i, arr) => a.localeCompare(b), null, 1, 4);
// 2

With extra-array try Array.binarySearch() instead.

References: array-binsearch, binarysearch.

Dependencies (0)

    Dev Dependencies (0)

      Package Sidebar

      Install

      npm i array-binarysearch

      Weekly Downloads

      32

      Version

      0.2.9

      License

      MIT

      Unpacked Size

      2.6 kB

      Total Files

      3

      Last publish

      Collaborators

      • wolfram77