Ierarhia claselor încorporate în OOP în JavaScript
Clasele încorporate au și ele o ierarhie. Să ne uităm la exemplu unui paragraf:
<p>text</p>
Să obținem o referință la paragraf în variabilă:
let elem = document.querySelector('p');
Să ne uităm la paragraful nostru în consolă:
console.dir(elem);
După cum știți deja, în proprietatea [[Prototype]]
se conține numele clasei paragrafului. Acesta este
HTMLParagraphElement. Dacă desfaceți
lista de proprietăți și metode ale acestei clase,
atunci dedesubt veți găsi din nou proprietatea
[[Prototype]], care va conține
deja clasa părinte și acesta va fi HTMLElement.
Pentru acesta se poate găsi de asemenea un părinte și
așa mai departe.
Studiați ierarhia claselor pentru această etichetă:
<div>text</div>
let elem = document.querySelector('div');
console.dir(elem);
Studiați ierarhia claselor pentru această etichetă:
<input>
let elem = document.querySelector('input');
console.dir(elem);
Studiați ierarhia claselor pentru această colecție:
<div>text</div>
<div>text</div>
<div>text</div>
let elems = document.querySelectorAll('div');
console.dir(elems);
Studiați ierarhia claselor pentru această colecție:
<div>
<p>text</p>
<p>text</p>
<p>text</p>
</div>
let elem = document.querySelector('div');
let elems = elem.children;
console.dir(elems);