Почему возвращает undef?
Попытался решить задачу, но возвращает undefined. Не могу понять, почему.
function filter(arr,func) {
var result = [];
for(var i=0; i<arr.length; i++){
var val = arr[i]; // * сначала мы запис в val единичное значение от for'а
if (func(val)){ // если функция inB верна
result.push(val); // мы записваем ее в массив
}
}
function inArray (ferst,second,tree) {
return function(x) {
return x == ferst || x == second || x == tree;
}
}
var arr = [1, 2, 3, 4, 5, 6, 7];
alert( filter(arr, inArray([1,2,3])) ); // 3,4,5,6
Источник: Stack Overflow на русском