Hierarchia wbudowanych klas w OOP w JavaScript

Wbudowane klasy również mają hierarchię. Spójrzmy na przykład akapitu:

html<p>text</p>

Pobierzmy referencję do akapitu do zmiennej:

javascriptlet elem = document.querySelector('p');

Spójrzmy na nasz akapit w konsoli:

javascriptconsole.dir(elem);

Jak już wiesz, we właściwości [[Prototype]] zawarta jest nazwa klasy akapitu. To HTMLParagraphElement. Jeśli rozwiniesz listę właściwości i metod tej klasy, to na dole ponownie odkryjesz właściwość [[Prototype]], która będzie zawierać już klasę nadrzędną i będzie to HTMLElement. Dla niej również można znaleźć rodzica i tak dalej.

Задание 1

Przeanalizuj hierarchię klas dla tego tagu:

html<div>text</div>
javascriptlet elem = document.querySelector('div');
console.dir(elem);
Задание 2

Przeanalizuj hierarchię klas dla tego tagu:

html<input>
javascriptlet elem = document.querySelector('input');
console.dir(elem);
Задание 3

Przeanalizuj hierarchię klas dla tej kolekcji:

html<div>text</div>
<div>text</div>
<div>text</div>
javascriptlet elems = document.querySelectorAll('div');
console.dir(elems);
Задание 4

Przeanalizuj hierarchię klas dla tej kolekcji:

html<div>
  <p>text</p>
  <p>text</p>
  <p>text</p>
</div>
javascriptlet elem = document.querySelector('div');
let elems = elem.children;

console.dir(elems);