Формальный способ получения ближайших значений в массив в Javascript с заданным значением и отсортированным массивом?

Если у меня есть такой массив:

var array = [1, 3, 4, 5, 9, 10];

И у меня есть такое значение:

var value = 8;

Я хочу получить следующий результат:

var result = getClosestValues(array, value); // [5, 9]

What' s правильный / предпочтительный способ сделать это в javascript? Похоже, это где-то формальный алгоритм. Может быть так:

var getClosestValues = function(array, value) {
    var low, high = 0, value;
    for (var i = 0; i < array.length; i++) {
        if (low <= value && low < array[i])
            low = array[i];
        if (high == value && high < array[i])
            high = array[i];
    };
    return [low, high];
}

Спасибо!

12
задан Lance Pollard 13 December 2010 в 17:08
поделиться