Memoization : 결과값을 저장해서 캐싱된 결과값을 리턴해주어 같은 인풋이 들어왔을 때는 이미 저장된 결과값을 활용하는 방식으로 빠르게 프로그램을 가속화할 수 있는 최적화 기법
캐시 : 임시적으로 데이터를 저장하는 공간
const fib = n => {
if (n <= 1) return 1
return fib(n - 1) + fib(n - 2)
}
피보나치처럼 재귀함수를 사용할 때 많이 사용된다.
useMemo() : Component 내부에서 data만 memoization하고 싶을 때 사용
React.memo : Component 전체를 memoization할 때 사용