← 질문 목록
#37깊이 0

리렌더링이 필요 이상으로 도는 이유는?

프론트엔드심화성능

렌더마다 새 값이 만들어지기 때문이다. 객체와 함수는 내용이 같아도 참조가 다르다 — 비교하는 쪽은 매번 바뀐 것으로 본다.

무엇을 넘기나렌더마다결과
문자열·숫자같은 값다시 안 그린다
인라인 객체·배열새 참조매번 다시 그린다
인라인 함수새 참조매번 다시 그린다

부모가 다시 그려지면 자식도 따라 그려지는 것이 기본이다. 대부분은 그래도 싸서 문제가 안 된다. 목록이 길거나 자식이 무거울 때만 비용이 눈에 띈다.

그때 쓰는 것이 메모다. 자식을 memo로 감싸고 넘기는 값을 고정한다. 다만 감싸기만 하고 인라인 객체를 계속 넘기면 비교만 늘고 효과는 없다.

핵심 정리

메모를 먼저 뿌리는 것은 대개 손해다. 비교에도 값이 들고 코드가 읽기 어려워진다. 프로파일러로 실제 느린 곳을 찾은 뒤에 붙인다.

추천 꼬리질문

0/300

적은 내용은 AI 학습에 쓰일 수 있습니다. 이름이나 연락처는 넣지 말아 주세요.

관련 질문

리렌더링이 필요 이상으로 도는 이유는?