Если у меня есть такой массив:
var array = [1, 3, 4, 5, 9, 10];
И у меня есть значение, подобное этому:
var value = 8;
Я хочу получить этот результат:
var result = getClosestValues(array, value); // [5, 9]
Какой правильный/предпочтительный способ сделать это в 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];
}
Спасибо!