מתודות עזר סטטיות
חלק מהיחידה תכנות מונחה עצמים במסלול ה-JavaScript של Coddy. שיעור 33 מתוך 56.
שיטות סטטיות הן פונקציות עזר ששייכות למחלקה עצמה ולא למופעים של המחלקה. הן שימושיות עבור פונקציות שאינן דורשות גישה לנתונים ספציפיים למופע.
בואו ניצור מחלקה עם מתודת עזר סטטית:
class MathHelper {
// הגדר שיטה סטטית
static square(number) {
return number * number;
}
}כדי לקרוא למתודה סטטית, משתמשים ישירות בשם המחלקה:
// קראו למתודה הסטטית בלי ליצור מופע
const result = MathHelper.square(5);
console.log(result); // 25שימו לב שלא היינו צריכים ליצור מופע חדש באמצעות new MathHelper(). מתודות סטטיות מושלמות לפונקציות עזר שמבצעות פעולות בלי להזדקק לנתוני מופע.
אתגר
צרו מחלקה בשם StringUtils עם מתודה סטטית בשם capitalize שמקבלת מחרוזת כארגומנט ומחזירה את אותה מחרוזת כשהאות הראשונה באות גדולה. לדוגמה, אם הקלט הוא "javascript", המתודה צריכה להחזיר "Javascript". ייצאו את המחלקה הזאת.
- בדקו אם המחרוזת ריקה:
if (!str || str.length === 0)(בלי הבדיקה הזאת, מחרוזת ריקה עלולה לגרום לבעיות).!strבודק אם הערך הואnull/undefined(מונע שגיאות)str.length === 0בודק אם המחרוזת ריקה (מחזיר "" במקום לקרוס)
- קבלו את התו הראשון:
str.charAt(0) - הפכו אותו לאות גדולה:
.toUpperCase() - קבלו את שאר המחרוזת:
str.slice(1)(ממיקום 1 ועד הסוף) - חברו: התו הראשון באות גדולה + שאר המחרוזת
נסו בעצמכם
import { StringUtils } from './stringUtils.js';
// אין לשנות את הקוד שלהלן
console.log(StringUtils.capitalize("programming"));השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה תכנות מונחה עצמים
1אובייקטים ומילת המפתח this
סקירה מהירה: אובייקטיםהוספת מתודות לאובייקטיםהבנת מילת המפתח thisפונקציות בנאימילת המפתח newאתגר סיכום7הורשה ומילת המפתח extends
הורשההקשר "הוא-סוג-של"מילת המפתח extendsהמתודה super()הורשת מאפיינים ומתודותאתגר סיכום8ארגון קוד OOP
ארגון מחלקות במודוליםתרגלו בעצמכם: קומפיילר JavaScript אונליין