누구나 JavaScript를 사용할 때 DOM 작업이 가장 일반적입니다. 웹 프런트 엔드 기술이 발전함에 따라 Ajax 요청을 통해 데이터를 얻은 다음 페이지 요소의 콘텐츠를 업데이트하는 등 DOM 요소를 작동하기 위해 JS를 점점 더 많이 사용하고 있습니다. , 일반적으로 node.appendChild()와 유사한 메서드를 사용하여 이 작업을 완료합니다. 이 메서드는 버퍼링되지 않습니다. 즉,appendChild 메서드를 호출할 때마다 브라우저가 페이지를 다시 렌더링합니다. 물론, 이 방법을 사용하는 데는 문제가 없습니다. 왜냐하면 우리는 일반적으로 소수의 DOM 노드를 업데이트하므로 큰 성능 문제를 일으키지 않습니다. 그러나 많은 수의 DOM 노드가 업데이트되면 성능 차이가 발생합니다. 점점 더 분명해질 것입니다. 브라우저는 페이지, 특히 일부 복잡한 태그를 지속적으로 렌더링해야 하기 때문에 많은 수의 다시 렌더링은 성능을 소모하고 사용자 경험에 영향을 미칩니다. 그렇다면 이러한 유형의 DOM 작업의 효율성을 향상시킬 수 있는 좋은 방법이 있습니까?
개발 중에 이러한 상황이 자주 발생하지는 않지만 JS가 DocumentFragment 메커니즘을 제공한다는 점을 이해하는 것이 필요합니다. 버퍼링 메커니즘은 DOM을 먼저 제공합니다. 노드가 생성된 후 DocumentFragment 객체가 페이지에 추가됩니다. 이때 모든 노드가 한 번에 렌더링되므로 브라우저의 부담이 크게 줄어듭니다. 예를 들어 다음 코드는