الترشيح عبر دالة
نعلم بوجود التابِع arr.filter(f) للمصفوفات. ووظيفته هي ترشيح كلّ العناصر عبر الدالة f. لو أرجعت true فيُعيد التابِع العنصر في المصفوفة الناتجة.
اصنع مجموعة مرشّحات «جاهزة لنستعملها مباشرة»:
inBetween(a, b)– بينaوbبما فيه الطرفين (أي باحتسابaوb).inArray([...])– في المصفوفة الممرّرة.
هكذا يكون استعمالها:
arr.filter(inBetween(3,6))– تحدّد القيم بين 3 و6 فقط.arr.filter(inArray([1,2,3]))– تحدّد العناصر المتطابقة مع أحد عناصر[1,2,3]فقط.
مثال:
/* .. your code for inBetween and inArray */
let arr = [1, 2, 3, 4, 5, 6, 7];
alert( arr.filter(inBetween(3, 6)) ); // 3,4,5,6
alert( arr.filter(inArray([1, 2, 10])) ); // 1,2
1. المرشّح inBetween
function inBetween(a, b) {
return function(x) {
return x >= a && x <= b;
};
}
let arr = [1, 2, 3, 4, 5, 6, 7];
alert( arr.filter(inBetween(3, 6)) ); // 3,4,5,6
2. المرشّح inArray
function inArray(arr) {
return function(x) {
return arr.includes(x);
};
}
let arr = [1, 2, 3, 4, 5, 6, 7];
alert( arr.filter(inArray([1, 2, 10])) ); // 1,2