useMemo
- memoization 된 값을 반환
- 의존성이 변경되는 경우, 이전에 기억하고 있던 리턴 값과 비교해서 다른 경우에만 다시 계산
- 배열에 값이 없는 경우(즉, 의존성 리스트가 없는 경우) 매 렌더링 때마다 새 값을 계산하게 될 것입니다.
- useMemo로 전달된 함수는 랜더링 중에 실행됨!
- 주의!
사이드 이펙트(side effects)는 useEffect에서 하는 일이지 useMemo에서 하는 일이 아닙
- 랜더링 중에서 실행하지 않는 함수는 useEffect를 사용할 것
- useRef와의 차이는, useRef는 DOM element의 특정 속성 값을 기억한다면, useMemo는 특정 함수의 리턴 값을 기억하는 것
useRef
Reference