데코레이터와 포워딩
데코레이터
캐싱기능을 위해 인수로 받은 함수의 행동을 변경시켜주는 함수
자주 사용되는 함수의 재연산 시간을 줄이기 위해 캐싱 기능을 위해 래퍼 함수 만들기
cachingDecorator함수를 생성하여 없는 결과값이면 메모리에 저장하고 이미 실행되었던 함수 인자라면 실행없이 바로 결과를 return해주는 캐시 기능의 함수로 return값은 캐싱기능이 추가되어
wraaping
된 함수가 반환되므로 동일한 작업을 수행하는 것은 변함이 없다.캐싱 데코레이터는 객체 메서드에 사용하기에 적합하지 않기 때문에
func.call
함수 이용 (객체 함수에서 this이용시 decorator함수로 wrapp도중 this가 undefined되기 때문에)func.call : this를 명시적으로 고정해 함수를 호출할 수 있게 해주는 내장 메서드
Last updated