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);