avatar
Published on

자바스크립트로 메모이제이션 구현하기

Author
  • avatar
    Name
    yceffort
const memoize = (func) => {
  // 메모이제이션을 위한 클로져 생성

  // 메모이제이션 값을 저장해둔다.
  const results = {}

  return (...args) => {
    // 파라미터로 메모이제이션 키 생성
    const memoKey = JSON.stringify(args)

    // 결과가 없으면 메모이제이션 값을 넣어둔다.
    if (!results[memoKey]) {
      results[memoKey] = func(...args)
    }

    // 메모이제이션 값을 리턴
    return results[memoKey]
  }
}