weirdjava,
один из возможных вариантов, ошибка если
совсем нет в прелагаемой строке чисел или числа вне диапазона.
элементы не сортируются!!!
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
</style>
</head>
<body>
<div id="func_r"></div>
<script>
function nearestElement(arrayToEnter, valueToCheck) {
var minN = -10000;
var maxN = 10000;
var arrA = arrayToEnter.split(",");
var ans = arrA.reduce(function(num, el) {
el = parseInt(el, 10);
if (!isNaN(el) && el >= minN && el <= maxN) {
if (num == "ERROR") {
num = el;
} else {
var m = Math.abs(valueToCheck - el);
var n = Math.abs(valueToCheck - num);
if (m < n) {
num = el;
}
}
}
return num;
}, "ERROR");
return ans;
};
var res = document.getElementById("func_r");
res.innerHTML = nearestElement("1,2,3,4,5", "3.9")
</script>
</body>
</html>