Menu
Coddy logo textTech

פונקציות טהורות

שיעור 3 מתוך 14 בקורס הצהרות פונקציה ב-JavaScript של Coddy.

ב-JavaScript, פונקציה טהורה היא פונקציה שתמיד תחזיר את אותו פלט עבור אותו קלט, ואינה יוצרת תופעות לוואי נצפות. פונקציות טהורות אינן משנות מצב חיצוני או מקיימות אינטראקציה עם משתנים חיצוניים.

פונקציות טהורות שימושיות במיוחד ב:
טרנספורמציית נתונים: אידיאליות למיפוי, סינון וצמצום נתונים.
ניהול מצב: מבטיחות אי-שינוי של המצב, במיוחד במסגרות עבודה כמו Redux.

תחביר של פונקציה טהורה:

function add(a, b) {
	return a + b;
}

הפונקציה 'add' שלעיל טהורה, משום שהיא תמיד מפיקה את אותה תוצאה עבור אותם קלטים ואינה משפיעה על מצב חיצוני כלשהו.

תחביר של פונקציה לא טהורה:

let counter = 0;
function increment() {
	return counter++;
}

הפונקציה 'increment' אינה טהורה, משום שהיא משנה משתנים או מצבים חיצוניים, וגורמת לתופעות לוואי.

שכתוב של פונקציה לא טהורה לפונקציה טהורה:

let total = 0;

// פונקציה לא טהורה 
function addToTotal(amount) {
    total += amount;
    return total;
}

// שכתוב של פונקציה לא טהורה לפונקציה טהורה
// פונקציה טהורה (יוצרת total חדש)
function addToTotal(total, amount) {
	return total + amount;
}

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

challenge icon

אתגר

קל

עליך לכתוב קוד JavaScript כדי לשנות את הפונקציה הטמאה הקיימת לפונקציה טהורה, ולקרוא לפונקציה הזו nextBirthday.

הפונקציה צריכה לקבל ארגומנט אחד, הגיל.

נסו בעצמכם

let userAge = 24;

// פונקציה לא טהורה 
function celebrateBirthday() {
    userAge += 1;
    return userAge; 
} 
// אין לשנות את הקוד שלמעלה
// יש לכתוב כאן קוד

כל השיעורים ביחידה הצהרות פונקציה ב-JavaScript

תרגלו בעצמכם: קומפיילר JavaScript אונליין