ما هي الفئة؟
جزء من قسم Object Oriented Programming في رحلة JavaScript على Coddy — الدرس 11 من 56.
تُعد الفئة (class) في JavaScript بمثابة مخطط لإنشاء كائنات ذات خصائص وطرق (methods) معرفة مسبقاً. تم تقديم الفئات في ES6 وهي توفر صيغة برمجية أنظف وأكثر سهولة لإنشاء الكائنات والتعامل مع الوراثة.
عرّف فئة بسيطة:
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
}طريقة constructor هي طريقة خاصة يتم استدعاؤها عند إنشاء كائن من الفئة.
أنشئ مثيلاً من الفئة:
const john = new Person("John", 25);الوصول إلى خصائص الكائن الذي تم إنشاؤه:
console.log(john.name); // المخرج: "John"
console.log(john.age); // المخرج: 25التحدي
أنشئ فئة باسم Car مع constructor يأخذ معاملين: make و model. يجب أن يقوم الـ constructor بتعيين هذه القيم كخصائص للكائن.
ورقة مرجعية
الفئة (class) هي مخطط لإنشاء كائنات بخصائص وطرق محددة مسبقاً.
قم بتعريف فئة باستخدام منشئ (constructor):
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
}يتم استدعاء طريقة الـ constructor عند إنشاء كائن من الفئة.
إنشاء نسخة (instance) من الفئة:
const john = new Person("John", 25);الوصول إلى خصائص الكائن:
console.log(john.name); // المخرج: "John"
console.log(john.age); // المخرج: 25جرّب بنفسك
// TODO: أنشئ فئة (class) باسم Car
// TODO: أضف منشئًا (constructor) يأخذ معاملين: make و model
// TODO: قم بتعيين هذه القيم (make و model) كخصائص للكائن
// لا تقم بتعديل الكود أدناه
const make = inp[0];
const model = inp[1];
const car = new Car(make, model);
console.log(car.make)
console.log(car.model)يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Object Oriented Programming
1الكائنات والكلمة المفتاحية this
مراجعة سريعة: الكائناتإضافة Methods إلى الكائناتفهم الكلمة المفتاحية thisConstructor Functionsالكلمة المفتاحية newتحدي المراجعة7الوراثة والكلمة المفتاحية extends
الوراثةعلاقة "is-a"الكلمة المفتاحية extendsالدالة super()وراثة الخصائص والوظائفتحدي المراجعة2تنظيم الكود
ما هي الـ Modules؟التصدير باستخدام exportالاستيراد باستخدام importالـ Default مقابل الـ Named Exports8تنظيم كود OOP
تنظيم الـ Classes في Modules11مشروع: مصيّر الأشكال
إعداد: فئة Shape والتصديروراثة فئة Circle