דילוג לתוכן המרכזי
מודול 6 · שיעור 1 מתוך 421/32 בקורס~10 min
שיעורי מודול (1/4)

מפה ומסנן

שתי שיטות חיוניות: הן הופכות מערך למערך חדש, מבלי לשנות את המקור.

map: הפוך כל אלמנט

הוא לוקח פונקציה, מחיל אותה על כל אלמנט ומחזיר מערך באותו אורך עם התוצאות.

JS
const numeri = [1, 2, 3, 4];

const doppi = numeri.map((n) => n * 2);
// [2, 4, 6, 8]

const stringhe = numeri.map((n) => `n=${n}`);
// ['n=1', 'n=2', 'n=3', 'n=4']

המקור נשאר ללא נגיעה:

JS
numeri; // [1, 2, 3, 4]  ← unchanged

filter: בחר קבוצת משנה

זה דורש פרדיקט (פונקציה שמחזירה true/false). זה שומר רק את האלמנטים שעבורם הפרדיקט נכון.

JS
const numeri = [1, 2, 3, 4, 5, 6];

const pari = numeri.filter((n) => n % 2 === 0);
// [2, 4, 6]

const grandi = numeri.filter((n) => n > 3);
// [4, 5, 6]

שילוב בין השניים

צנרת קלאסית: סינון, ואז להפוך.

JS
const prezzi = [12, 5, 100, 30, 7];

const grandiDoppi = prezzi.filter((p) => p > 10).map((p) => p * 2);
// [24, 200, 60]

נסה את זה

פעילות גופנית#js.m6.l1.e1
ניסיונות: 0טוען...

הגדר `מע"מ(מחירים, תעריף)`: בהינתן מערך של מספרים ותעריף (למשל 0.22), החזר מערך עם המחירים מוגדלים במע"מ. השתמש במפה.

טוען עורך...
הצג רמז

prices.map((p) => p * (1 + שיעור))

הפתרון זמין לאחר 3 ניסיונות

סקירת התרגיל

פעילות גופנית#js.m6.l1.e2
ניסיונות: 0טוען...

הגדר `adultNames(people)`: אתה מקבל מערך של אובייקטים { name, age } ומחזיר את מערך השמות של אנשים עם גיל >= 18. השתמש בפילטר + מפה.

טוען עורך...
הצג רמז

שרשרת: .filter(...).map((p) => p.name)

הפתרון זמין לאחר 3 ניסיונות