An NPM package for searching in sorted arrays fast and comfortable by a selector.
npm i binary-search-by
import assert from 'assert';
import {binarySearchBy} from 'binary-search-by';
// Sorted by distance
const cities = [
{ distance: 0, name: 'Berlin' },
{ distance: 149, name: 'Leipzig' },
{ distance: 217, name: 'Jena' },
{ distance: 263, name: 'Wurzbach' }
];
const result1 = binarySearchBy(cities, 217, city => city.distance);
assert.deepEqual(result1, {found: true, index: 2});
const result2 = binarySearchBy(cities, 230, city => city.distance);
assert.deepEqual(result2, {found: false, index: 3});
MIT
Copyright (c) 2019-present Marco Stahl