3.0 KiB
3.0 KiB
id, title, challengeType, videoUrl, localeTitle
| id | title | challengeType | videoUrl | localeTitle |
|---|---|---|---|---|
| 587d7daf367417b2b2512b7e | Understand the Constructor Property | 1 | فهم خاصية منشئ |
Description
constructor خاص تقع على كائنات الكائن duck beagle التي تم إنشاؤها في التحديات السابقة: السماح بطة = الطيور الجديدة () ؛لاحظ أن الخاصية
دع بيغل = كلب جديد ()؛
console.log (duck.constructor === Bird)؛ // يطبع صحيح
console.log (beagle.constructor === Dog)؛ // يطبع صحيح
constructor مرجع إلى الدالة منشئ الذي أنشأ المثيل. ميزة الخاصية constructor أنه من الممكن التحقق من هذه الخاصية لمعرفة نوع الكائن. في ما يلي مثال لكيفية استخدام هذا: وظيفة joinBirdFraternity (مرشح) {ملحوظة
if (candidate.constructor === Bird) {
عاد صحيح
} آخر {
عودة كاذبة؛
}
}
نظرًا لأنه يمكن الكتابة فوق خاصية
constructor (والتي سيتم تغطيتها في التحديين التاليين) ، فمن الأفضل عمومًا استخدام أسلوب instanceof للتحقق من نوع الكائن. Instructions
joinDogFraternity تأخذ معلمة candidate ، وتعود باستخدام خاصية constructor ، true إذا كان المرشح Dog ، وإلا تعيد false . Tests
tests:
- text: يجب تعريف <code>joinDogFraternity</code> كدالة.
testString: 'assert(typeof(joinDogFraternity) === "function", "<code>joinDogFraternity</code> should be defined as a function.");'
- text: يجب أن تعود <code>joinDogFraternity</code> true إذا كان <code>candidate</code> مثالًا لـ <code>Dog</code> .
testString: 'assert(joinDogFraternity(new Dog("")) === true, "<code>joinDogFraternity</code> should return true if<code>candidate</code> is an instance of <code>Dog</code>.");'
- text: <code>joinDogFraternity</code> يجب استخدام الخاصية <code>constructor</code> .
testString: 'assert(/\.constructor/.test(code) && !/instanceof/.test(code), "<code>joinDogFraternity</code> should use the <code>constructor</code> property.");'
Challenge Seed
function Dog(name) {
this.name = name;
}
// Add your code below this line
function joinDogFraternity(candidate) {
}
Solution
// solution required