מהי מחלקת JavaScript וכיצד להשתמש בה?



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

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

מהי מחלקת JavaScript?

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





// אתחול פונקציה עם ביטוי פונקציה const a = function () {}
// אתחול מחלקה עם ביטוי כיתתי const b = class {}

ב- JavaScript, במקום להשתמש בפונקציית מילות המפתח כדי ליזום אותה, אנו משתמשים במחלקת מילות המפתח. כמו כן, המאפיינים מוקצים בתוך שיטת בנאי ().

כיצד להשתמש בכיתת JavaScript?

הקוד שהוכרז עם פוּנקצִיָה והמחלקה מחזירה פונקציה [[אב טיפוס]]. בעזרת אבי טיפוס, כל פונקציה יכולה להפוך למופע קונסטרוקטור באמצעות מילת המפתח החדשה. לדוגמה:



const a = class {} // אתחל קונסטרוקטור מ constructor class construktorFromClass = חדש () console.log (constructorFromClass)

תְפוּקָה:

בונה {}: כיתה

כעת, ישנן שלוש דרכים שונות לשימוש בכיתה ב- JavaScript. בואו ניכנס לפרטים של כל שיטה עם דוגמה.

הגדר כיתה

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



// אתחול עובד פונקציית קונסטרוקטור עובד (שם, אמפיד) {this.name = שם this.empid = אמפיד}

כעת, אם נתרגם זאת לתחביר הכיתה, תראה שהמבנים דומים מאוד.

כיצד למצוא סוג נתונים בפייתון
// אתחול עובד בכיתה של הגדרת כיתה {constructor (name, empid) {this.name = name this.empid = empid}}

אנו יכולים לומר שמילת המפתח בכיתה מתקשרת בצורה פשוטה יותר. ההבדל היחיד בתחביר האתחול הוא שימוש במילת המפתח class במקום בפונקציה. כמו כן, הוא מקצה את המאפיינים בתוך שיטת קונסטרוקטור ().

הגדר שיטות

תרגול נפוץ נוסף עם פונקציות קונסטרוקטור הוא להקצות שיטות ישירות לאב-טיפוס במקום באתחול. ניקח דוגמא ונראה איך זה עובד:

עובד פונקציה (שם, אמפיד) {this.name = שם this.empid = empid} // הוספת שיטה לבונה עובד.פרוטוטיפ.greet = פונקציה () {return '$ {this.name} אומר שלום.`}

כשאתה כותב את אותו קוד עם class, הוא פשוט ומוסיפים את השיטה ישירות.

עובד בכיתה {קונסטרוקטור (שם, אמפיד) {this.name = שם this.empid = empid} // הוספת שיטה לברכת הבנאי () {return `$ {this.name} אומר שלום.`}}

למרות שהשיעורים מאפשרים תחביר פשוט ותמציתי יותר, לפעמים ייתכן שתצטרך להתפשר עם הבהירות בתהליך.

הרחבת כיתה

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

ניתן ליצור פונקציות קונסטרוקטוריות חדשות מההורה בשיטת call (). לדוגמה:

// יצירת קונסטרוקטור חדש ממידע הפונקציה האב (שם, אמפיד, משכורת) {// בונה שרשרת עם שיחת עובד.התקשר (זה, שם, אמפיד) this.salary = משכורת}

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

// יצירת מחלקה חדשה ממידע כיתת האב מרחיבה את העובד {בונה (שם, אמפיד, משכורת) {// בונה שרשרת עם סופר-על (שם, אמפיד) // הוסף נכס חדש this.salary = משכורת}}

השיעורים מספקים לך דרך תמציתית יותר ליצור לְהִתְנַגֵד שרטוטים ופונקציות קונסטרוקטור מתארים את המתרחש מתחת למכסה המנוע בצורה ספציפית יותר.

בכך הגענו לסוף המאמר שלנו. אני מקווה שהבנת כיצד להשתמש ב- JavaScript Class.

המרה כפולה לג'אווה

עכשיו שאתה יודע על מחלקת JavaScript, עיין ב מאת אדוריקה. הדרכת הסמכת בניית אתרים תעזור לך ללמוד כיצד ליצור אתרים מרשימים באמצעות HTML5, CSS3, Twitter Bootstrap 3, jQuery ו- Google APIs ולפרוס אותו ל- Amazon Simple Storage Service (S3).

יש לך שאלה עבורנו? אנא הזכיר זאת בפרק ההערות של 'מחלקת JavaScript' ונחזור אליך.