מאפיינים ומתודות
חלק מהיחידה תכנות מונחה עצמים במסלול ה-JavaScript של Coddy. שיעור 13 מתוך 56.
מחלקות ב-JavaScript מאפשרות לנו להגדיר מאפיינים ומתודות שיהיו משותפים לכל המופעים של המחלקה.
צרו מחלקה עם מאפיינים:
class Car {
constructor(make, model) {
this.make = make;
this.model = model;
}
}בעת יצירת מופע, הבנאי מגדיר את המאפיינים האלה:
const myCar = new Car('Toyota', 'Corolla');
console.log(myCar.make); // פלט: 'Toyota'
console.log(myCar.model); // פלט: 'Corolla'הוסיפו מתודה למחלקה:
class Car {
constructor(make, model) {
this.make = make;
this.model = model;
}
getDescription() {
return `This car is a ${this.make} ${this.model}.`;
}
}עכשיו נוכל לקרוא למתודה הזו בכל מופע:
const myCar = new Car('Toyota', 'Corolla');
console.log(myCar.getDescription()); // פלט: 'This car is a Toyota Corolla.'אתגר
צרו מחלקה בשם Book בקובץ book.js עם הפרטים הבאים:
- בנאי שמקבל את הפרמטרים
title,authorו-pagesומגדיר אותם כמאפיינים. - מתודה בשם
getInfoשמחזירה מחרוזת בפורמט: “Title: [title], Author: [author], Pages: [pages]” - ייצאו את המחלקה על ידי הוספת `export` לפני הצהרת `class`
נסו בעצמכם
import { Book } from './book.js';
// בדיקה (אין לשנות את החלק הזה)
const book = new Book("JavaScript Basics", "John Doe", 200);
console.log(book.getInfo());
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה תכנות מונחה עצמים
1אובייקטים ומילת המפתח this
סקירה מהירה: אובייקטיםהוספת מתודות לאובייקטיםהבנת מילת המפתח thisפונקציות בנאימילת המפתח newאתגר סיכום7הורשה ומילת המפתח extends
הורשההקשר "הוא-סוג-של"מילת המפתח extendsהמתודה super()הורשת מאפיינים ומתודותאתגר סיכום8ארגון קוד OOP
ארגון מחלקות במודוליםתרגלו בעצמכם: קומפיילר JavaScript אונליין