نريد أن نتيح هذا المشروع المفتوح المصدر إلى كل الناس حول العالم. من فضلك ساعدنا على ترجمة محتوى هذه السلسله للغة التى تعرفها.
الرجوع الي الدرس

أين "الوثيقة" في التسلسل الهرمي؟

إلى أي فئة ينتمي “المستند”؟

ما مكانها في التسلسل الهرمي لـ DOM؟

هل ترث من “العقدة” أو “العنصر” ، أو ربما “HTMLElement”؟

Wيمكننا معرفة أي فئة ينتمي إليها بإخراجها ، مثل:

تشغيل شبيبة تنبيه (وثيقة) ؛ // [كائن HTMLDocument] ``

أو:

تشغيل شبيبة تنبيه (document.constructor.name) ؛ // HTMLDocument ``

لذا ، المستند هو مثيل لفئةHTMLDocument.

ما مكانها في التسلسل الهرمي؟

نعم ، يمكننا تصفح المواصفات ، ولكن سيكون من الأسرع معرفة ذلك يدويًا.

دعنا نجتاز سلسلة النموذج عبر “proto”.

كما نعلم ، فإن طرق الصف موجودة في “النموذج الأولي” للمنشئ. على سبيل المثال ، يحتوي “HTMLDocument.prototype” على طرق للمستندات.

أيضًا ، هناك إشارة إلى وظيفة المُنشئ داخل النموذج الأولي:

تشغيل شبيبة تنبيه (HTMLDocument.prototype.constructor === HTMLDocument) ؛ // صحيح ``

للحصول على اسم الفئة كسلسلة ، يمكننا استخدام buildor.name. لنفعل ذلك من أجل سلسلة النموذج “المستند” بالكامل ، حتى الفئة “العقدة”:

تشغيل شبيبة تنبيه (HTMLDocument.prototype.constructor.name) ؛ // HTMLDocument تنبيه (HTMLDocument.prototype .__ proto__.constructor.name) ؛ // المستند تنبيه (HTMLDocument.prototype .__ proto__.proto.constructor.name) ؛ // العقدة ``

هذا هو التسلسل الهرمي.

يمكننا أيضًا فحص الكائن باستخدام console.dir (مستند) ورؤية هذه الأسماء من خلال فتح “proto”. تأخذهم وحدة التحكم من المنشئ داخليًا.