본문 바로가기
jQuery

DocumentFragment

by hjcode 2019. 12. 20.
var $box = $('#box');
var arr = ['a','b','c','d','e','f'];

arr.forEach( item => {
  $box.append( '<p>' + item + '</p>' );
});

 

위와 같은 방식으로 배열 등을 받아와서 동적으로 태그를 추가해주는 방식은 양이 적으면 상관없겠지만 
그 양이 수백, 수천개라면 성능에도 좋지 않고 그만큼 페이지를 새로 그려야합니다. 브라우저가 힘들어할겁니다.

 

var $box = $('#box');
var arr = ['a','b','c','d','e','f'];
var $frag = $(document.createDocumentFragment());

arr.forEach( item => {
	$frag.append( '<p>' + item + '</p>' );
});

$box.append($frag);

 

documentFragment를 사용하여 append해준다면 이 문제를 해결할 수 있습니다.
documentFragment에 append하는 것은 가상의 메모리에서 일어나는 일이기 때문에 브라우저와는 상관이 없습니다.
페이지를 새로 그리는 것도 한번입니다.

 

출처 https://www.zerocho.com/category/jQuery/post/57c3a8821efc521700a70918

 

반응형

'jQuery' 카테고리의 다른 글

숫자 정렬 토글로 만들기  (0) 2019.12.19
jQuery로 간단한 todo 만들기  (0) 2019.11.14
날씨 위젯  (0) 2019.10.11
계산기 만들기  (0) 2019.10.02
TweenMax 텍스트 애니메이션  (0) 2019.10.02