// 왼쪽 트리
body.children[4];
// 오른쪽 트리
body.children[0].children[0].children[0].children[0].children[0];
<html>
<body>
<div></div>
<div></div>
<div></div>
<div></div>
<!-- div 생략... -->
<div>마지막 500번째</div>
</body>
</html>
<html>
<body>
<div>
<div>
<div>
<div>
<!-- div 생략... -->
<div>마지막 500번째</div>
</div>
</div>
</div>
</div>
</body>
</html>
위의 사진은 구글이 2017년에 진행한 실험으로, 페이지의 노드 수가 400개에서 6,000개로 증가하면 전환 확률이 95% 감소하는데, 여기서 전환 확률이란 방문자가 원하는 행동을 실제로 수행하는 비율을 의미하며, 이는 사용자 경험이 나빠져 사용자가 웹사이트에서 원하는 행동을 덜 하게 된다는 것을 의미합니다.
이러한 문제를 해결하기 위해서는 주기적으로 DOM의 크기와 깊이를 확인해야 합니다.
또한, Lighthouse와 같은 성능 측정 도구를 사용하여 어느 부분이 문제인지 파악해야 합니다.
마지막으로, CSS 선택자의 범위를 document로 바로 접근하지 말고 범위를 더 좁히는 것도 도움이 됩니다.
👍