מערכת מוצרים למסחר אלקטרוני
חלק מהיחידה תכנות מונחה עצמים במסלול ה-JavaScript של Coddy. שיעור 54 מתוך 56.
אתגר
זוהי מערכת מוצרים של חנות מקוונת. למוצרים יש מחירים, ומוצרים פיזיים (כמו מחשבים ניידים) מחשבים את עלות המשלוח על סמך המשקל שלהם. משלוח של מוצרים דיגיטליים (כמו ספרים אלקטרוניים) יהיה בחינם.
המשימה שלך היא להשלים את השיטות החסרות במערכת המוצרים:
1: השלימו את המחלקה Product בקובץ product.js:
- הוסיפו את השיטה
getPrice()שמחזירה אתthis.#price - הוסיפו את השיטה
getDescription()שמחזירה את${this.name} - $${this.#price}
2: השלימו את המחלקה PhysicalProduct בקובץ physicalProduct.js:
- הוסיפו את השיטה
calculateShipping()ש:- מחשבת את
this.weight * 0.5(50 סנט לכל פאונד) - מחזירה את עלות המשלוח
- מחשבת את
נסו בעצמכם
import { Product } from './product.js';
import { PhysicalProduct } from './physicalProduct.js';
const book = new Product('Book', 20);
const laptop = new PhysicalProduct('Laptop', 1000, 5);
console.log(book.getDescription()); // אמור להציג: "Book - $20"
console.log(laptop.getDescription()); // אמור להציג: "Laptop - $1000 (5 lbs)"
console.log(`Shipping cost for laptop: $${laptop.calculateShipping()}`); // אמור להציג: "Shipping cost for laptop: $2.5"
console.log(`Book price: $${book.getPrice()}`); // אמור להציג: "20"
console.log(`Laptop price: $${laptop.getPrice()}`); // אמור להציג: "1000"כל השיעורים ביחידה תכנות מונחה עצמים
1אובייקטים ומילת המפתח this
סקירה מהירה: אובייקטיםהוספת מתודות לאובייקטיםהבנת מילת המפתח thisפונקציות בנאימילת המפתח newאתגר סיכום7הורשה ומילת המפתח extends
הורשההקשר "הוא-סוג-של"מילת המפתח extendsהמתודה super()הורשת מאפיינים ומתודותאתגר סיכום8ארגון קוד OOP
ארגון מחלקות במודולים15אתגרים מסכמים
בונה דמויות למשחקמערכת מוצרים למסחר אלקטרונימערכת לניהול אוניברסיטהמערכת למכשירי בית חכםתרגלו בעצמכם: קומפיילר JavaScript אונליין