Іерархія ўбудаваных класаў у ААП у JavaScript

Убудаваныя класы таксама маюць іерархію. Давайце паглядзім на прыкладзе абзаца:

html<p>text</p>

Атрымаем спасылку на абзац у зменную:

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

Паглядзім на наш абзац у кансолі:

javascriptconsole.dir(elem);

Як вы ўжо ведаеце, у ўласцівасці [[Prototype]] змяшчаецца імя класа абзаца. Гэта HTMLParagraphElement. Калі разгарнуць спіс уласцівасцяў і метадаў гэтага класа, то знізу зноў выявіцца ўласцівасць [[Prototype]], якое будзе змяшчаць ужо бацькоўскі клас і гэта будзе HTMLElement. Для яго таксама можна знайсці бацьку і гэтак далей.

Задание 1

Вывучыце іерархію класаў для данага тэга:

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

Вывучыце іерархію класаў для данага тэга:

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

Вывучыце іерархію класаў для данай калекцыі:

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

Вывучыце іерархію класаў для данай калекцыі:

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

console.dir(elems);