【どむ】
DOM(ドキュメントオブジェクトモデル) とは?
最終更新:
💡 HTMLをJavaScriptで操作するための「リモコン」
HTMLやXMLの文書を、ノードとオブジェクトからなるツリーとして表すモデルとAPI。ブラウザではJavaScriptなどからページの内容・構造・スタイルを読み書きし、イベントを扱うために使う。JavaScript言語そのものの機能ではなくWeb API。
📌 このページのポイント
DOMっていつ作られるの?
Reactを使うときもDOMを直接触るの?
DOM操作が重いってどういうこと?
サイズや位置の変更はレイアウト計算につながるけど、すべての変更で即座に全部を描き直すわけではないよ。変更1000回なら描画も1000回、とは言えない。サイズを変えた直後に寸法を読み取る処理を繰り返すと、強制的なレイアウト計算が増えることがあるんだ。
DOMの変更を監視する方法はあるの?
開発者ツールに見えるのは元のHTMLなの?
Chrome DevToolsのElementsパネルでは、現在のDOMを確認・編集できるよ。JavaScriptが追加した要素など、取得時のHTMLと違う場合もある。querySelector()は条件に合う最初の要素を返し、見つからなければnull。取得できた要素の内容やスタイルを調べられるんだ。
📖 おまけ:英語の意味
「Document Object Model」 = 文書オブジェクトモデル
💬 Documentは文書、Objectはオブジェクト、Modelはモデル。HTMLやXMLの文書をノードの木構造で表し、APIから扱えるようにするよ