مُنشئات الكائنات في JavaScript
ستحتاج إلى إنشاء العديد من الكائنات من نفس النوع. توفر JavaScript عدة طرق للقيام بذلك بكفاءة.
دوال المُنشئ (Constructor Functions)
المُنشئ هو دالة تُستخدم لإعداد كائنات جديدة. اتبع هذه القواعد لتجنب الأخطاء:
- ابدأ اسم الدالة بحرف كبير (Capitalize). يساعدك هذا في التعرف عليها كمُنشئ.
- استخدم الكلمة المفتاحية
new. إذا نسيت ذلك، فستعمل الدالة كدالة عادية وتفشل في إنشاء الكائن.
القيم الافتراضية
يمكنك تعيين قيم افتراضية في المُنشئ الخاص بك. يضمن ذلك بقاء كائناتك صالحة حتى لو أغفلت بعض التفاصيل.
مثال: function Person(name = "Unknown", age = 0) { this.name = name; this.age = age; }
إذا استدعيت new Person()، سيصبح الاسم "Unknown" والعمر 0.
Object.create()
يمكنك استخدام Object.create() لإنشاء كائن جديد بناءً على كائن موجود. يعتمد هذا على الوراثة القائمة على النموذج الأولي (prototype-based inheritance). بدلاً من نسخ البيانات، يرتبط الكائن الجديد بالنموذج الأولي الأصلي.
تحسين الذاكرة
لا تضع الدوال (methods) داخل المُنشئ نفسه. إذا فعلت ذلك، فسيحصل كل كائن جديد على نسخة خاصة به من تلك الدالة، مما يؤدي إلى هدر الذاكرة.
بدلاً من ذلك، أضف الدوال إلى النموذج الأولي (prototype). بهذه الطريقة، تشترك جميع الكائنات في نسخة واحدة فقط من الدالة.
مثال: Person.prototype.greet = function() { console.log("Hello " + this.name); };
الوراثة
تسمح الفئات (Classes) لفئة واحدة بالوراثة من فئة أخرى. استخدم الكلمة المفتاحية super() في الفئة الابنة لاستدعاء مُنشئ الفئة الأب. يتيح ذلك للابنة الوصول إلى خصائص الأب.
فوائد استخدام المُنشئات:
- كود قابل لإعادة الاستخدام: إنشاء العديد من الكائنات باستخدام نمط واحد.
- منطق نظيف: إبقاء إعداد الكائن في مكان واحد.
- تهيئة سهلة: تعيين قيم محددة أثناء الإنشاء.
- الوراثة: بناء كائنات معقدة من كائنات أبسط.
المصدر: https://www.geeksforgeeks.org/javascript/js-constructor-method/ المصدر: https://www.w3schools.com/js/js_object_constructors.asp
المنشور الكامل: https://dev.to/kamalesh_ar_6252544786997/object-constructors-in-javascript-2e96