3관문. Lazy Initialization
관문 3 / 7
컴포넌트가 마운트될 때만 초기값 계산 함수를 실행하도록 Lazy Initialization을 적용하라.
📖 이론 비급
Lazy Initialization: 초기화 비용 단 한 번
useState(expensiveCalc())는 매 렌더마다 expensiveCalc()를 호출한다.
초기값으로 사용될 뿐인데 불필요한 비용이 매번 발생한다.
해결책: useState(() => expensiveCalc())처럼 함수를 전달하면
리액트가 최초 마운트 시에만 그 함수를 실행한다.
localStorage 읽기, 복잡한 배열 가공 등에 필수적으로 적용하라.