"매 DOM mutation 의 cost 의 reflow 의 dominate". Browser rendering pipeline 의 layout (reflow) → paint (repaint) → composite. Reflow 의 가장 expensive — geometry recalc 매 children. 2026 의 GPU compositing + Layout API 의 mitigate.
List virtualization (react-virtual, TanStack Virtual).
Animation 의 transform/opacity-only.
SPA route transition (View Transitions).
Long-list performance (content-visibility).
Charting (Canvas/WebGL 의 DOM 의 avoid).
💻 패턴
Layout thrashing 의 fix
// BAD — 매 iteration 의 forced reflow
for(constelofitems){constw=el.offsetWidth;// read
el.style.width=(w+10)+"px";// write — invalidates layout
}// GOOD — batch reads, then batch writes
constwidths=items.map(el=>el.offsetWidth);items.forEach((el,i)=>{el.style.width=(widths[i]+10)+"px";});
transform animation (composite-only)
.card{will-change:transform;transition:transform200msease-out;}.card:hover{transform:translateY(-4px)scale(1.02);}/* 매 60fps GPU 의 — top/left 의 use 의 X */
content-visibility
.long-article>section{content-visibility:auto;contain-intrinsic-size:0500px;/* 매 placeholder size */}/* 매 viewport 외 의 layout/paint 의 skip — 10x 빠름 매 long page */