概要
仮想DOMについて学習したのでアウトプットしたいと思います。
結論
仮想DOMとは端的に言うと__効率よくレンダリングを行う仕組み__のことです。
前提知識
DOM
DOMとはDocument Object Modelの略称で、HTMLを操作するためのAPIのことです。
<html>
や<body>
といった__Node(ノード)__と呼ばれるものがツリー構造になって構築されています。
JavascriptでHTMLを操作する際に使用します。
DOMが変更される際の仕組み
- DOMに変更が発生した場合、再度情報を受け取り直してDOMを再構築。
- 再構築されたDOMをもとに再描画されてブラウザに表示。
通常DOMを変更する場合は、DOMが再構築されるので描画が遅くなってしまいます。
そこで登場するのが__仮想DOM__です。
仮想DOMの仕組み
- DOMに変更が発生する場合、実際のDOMと同じ仮想DOMを作成。
- 仮想DOM上で変更を反映し、仮想DOMの変更前と変更後の差分を検出。
- 発生した差分のみを実際のDOMに反映。
差分のみを実際のDOMに反映しているためレンダリングが早くなります。