You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
"use strict";
var toPosInt = require("../../number/to-pos-integer") , callable = require("../../object/valid-callable") , value = require("../../object/valid-value") , floor = Math.floor;
module.exports = function (compareFn) { var length, low, high, middle;
value(this); callable(compareFn);
length = toPosInt(this.length); low = 0; high = length - 1;
while (low <= high) { middle = floor((low + high) / 2); if (compareFn(this[middle]) < 0) high = middle - 1; else low = middle + 1; }
if (high < 0) return 0; if (high >= length) return length - 1; return high; };
|