dom_dom0200_006

getElementsByClassName() や getElementsByTagName() が返すのは ( A ) であり、これは通常 ( B ) コレクションである。

解答

A: HTMLCollection
B: ライブ(live)

解説

これらのメソッドは HTMLCollection を返し、DOMの変化がコレクションに即時反映される「ライブ」な性質を持つ。配列メソッドは直接使えないため注意。

使用例(サンプルコード)

[ js ]

const divs = document.getElementsByTagName('div'); // HTMLCollection(ライブ)
const d = document.createElement('div');
document.body.appendChild(d);
console.log(divs[divs.length - 1] === d); // true(反映される)