JavaScriptのOOPにおける組み込みクラスの階層
組み込みクラスにも階層があります。 段落を例に見てみましょう:
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);