// array = sorted array of integers // val = pivot element // dir = boolean, if true, returns the previous value function getVal(array, val, dir) { for (var i=0; i < array.length; i++) { if (dir == true) { if (array[i] > val){ return array[i-1] || 0; } } else { if (array[i] >= val) { return array[i]; } } } }
Example:
array = [0, 5, 7, 9, 22, 27]; pivot = 11; getVal(array, pivot); //returns 22 getVal(array, pivot, true); //returns 9