let arr = [10, 20, 30, 40, 50, 60, 70];
function nam(a,b){
return function(x){
return x >= a && x <= b
}
}
console.log(arr.filter(nam(20,50)))arr.filter(nam(20,50))
// это то же самое:
arr.filter(function (x) { return x >= 20 && x <= 50; })
// или так:
function f(x) {
return x >= 20 && x <= 50;
}
arr.filter(f).filter(f) применит функцию f по очереди к каждому элементу массива. Т.е. вызовет функцию f(10), f(20), ... f(70)f(элемент) вернул true.