UNPKG

@antv/f2

Version:

Charts for mobile visualization.

31 lines (30 loc) 648 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = _default; var _util = require("@antv/util"); /** * 二分右侧查找 * https://github.com/d3/d3-array/blob/master/src/bisector.js */ function _default(getter) { /** * x: 目标值 * lo: 起始位置 * hi: 结束位置 */ return function (a, x, _lo, _hi) { var lo = (0, _util.isNil)(_lo) ? 0 : _lo; var hi = (0, _util.isNil)(_hi) ? a.length : _hi; while (lo < hi) { var mid = lo + hi >>> 1; if (getter(a[mid]) > x) { hi = mid; } else { lo = mid + 1; } } return lo; }; }