mirror of
https://github.com/freeCodeCamp/freeCodeCamp.git
synced 2025-12-31 06:01:50 -05:00
2.3 KiB
2.3 KiB
id, title, challengeType, forumTopicId, dashedName
| id | title | challengeType | forumTopicId | dashedName |
|---|---|---|---|---|
| 587d7dad367417b2b2512b77 | تعريف وظيفة المنشئة (Constructor Function) | 1 | 16804 | define-a-constructor-function |
--description--
يكون منشئون (Constructors) وظائف (functions) تقوم بأنشاء كائنات (objects) جديدة. وهي تحدد الخصائص والسلوكيات التي ستنتمي إلى الـ object الجديد. فكر فيها كمخطط لإنشاء objects جديدة.
وفيما يلي مثال على constructor:
function Bird() {
this.name = "Albert";
this.color = "blue";
this.numLegs = 2;
}
هذا الـ constructor يعرف object الـ Bird ذو خصائص name, color و numLegs تم تعيينهم إلى Albert و blue و 2 على التوالي. ويتبع الـ Constructors بعض الاتفاقيات:
- يتم تعريف المنشئون (Constructors) مع اسم بأحرف كبيرة (capitalized) لتمييزهم عن الوظائف (functions) الأخرى التي ليست
constructors. - يستخدم الـ Constructors كلمة
thisلتعيين خصائص الـ object الذي سينشئونه. داخل الـ constructor الكلمةthisتشير إلى الـ object الجديد الذي ستقوم بإنشائه. - يقوم المنشئون (Constructors) بتحديد الخصائص والسلوكيات بدلاً من بإنشاء قيمة مثلما قد يفعل الوظائف (functions) الأخرى.
--instructions--
قم بإنشاء constructor الـ Dog، بخصائص name و color و numLegs التي تم تعيينهم على string و string و رقم، على التوالي.
--hints--
Dog يجب أن يكون لديه خاصية name من نوع string.
assert(typeof new Dog().name === 'string');
Dog يجب أن يكون لديه خاصية color من نوع string.
assert(typeof new Dog().color === 'string');
Dog يجب أن يكون لديه خاصية numLegs من نوع number.
assert(typeof new Dog().numLegs === 'number');
--seed--
--seed-contents--
--solutions--
function Dog (name, color, numLegs) {
this.name = 'name';
this.color = 'color';
this.numLegs = 4;
}