mirror of
https://github.com/freeCodeCamp/freeCodeCamp.git
synced 2025-12-31 15:03:21 -05:00
2.2 KiB
2.2 KiB
id, title, challengeType, forumTopicId, dashedName
| id | title | challengeType | forumTopicId | dashedName |
|---|---|---|---|---|
| 587d7dad367417b2b2512b77 | تعريف دالة البناء (Define a 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;
}