私は過去に、DOMの操作がjavascriptで実行できる最も費用のかかることの1つであることを読みました。私はそれがperfsで示されているのを見ました。なぜそんなに時間がかかるのですか?
2 に答える
3
この速度低下は、ドキュメントのリフローが原因で発生します。From Google Developers JavaScript の高速化: DOM ガイドの操作
DOM を操作すると、ブラウザのリフローが発生する可能性があります。これは、ブラウザがどのように表示するかを決定するプロセスです。DOM を直接操作したり、要素の CSS スタイルを変更したり、ブラウザ ウィンドウのサイズを変更したりすると、すべてリフローが発生する可能性があります。offsetHeight や offsetWidth などの要素のレイアウト プロパティにアクセスすると、リフローがトリガーされることもあります。各リフローには時間がかかるため、ブラウザーのリフローを最小限に抑えることができればできるほど、アプリケーションは高速になります。
于 2012-12-13T16:15:24.273 に答える
2
DOMが更新されるたびに、ドキュメントが再レンダリングされます。レイアウトは非常に複雑です。
于 2012-12-13T16:06:37.207 に答える