
: 값비싼 함수 호출의 결과를 캐싱하고, 동일한 입력이 다시 발생할 때 캐싱된 결과를 반환하는 프로그래밍 기술
: 메모이제이션된 값을 반환 하는 리엑트 훅
const memoizedValue = useMemo(() => computeExpensiveValue(a, b), [a, b]);
∴ useMemo 훅이 연산을 수행하면 결과를 메모리에 저장 -> 배열내의 값이 하나라도 변경되면 다시 연산을 수행
∴ 결과가 항상 최신 상태로 유지되며, 불필요한 재연산 피하기 가능
useMemo, useCallback으로 최적화가 꼭 필요할까?
useMemo와 useCallback은 왜, 언제 사용할까?