관리 메뉴

클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지

데코레이터 6 - Accessor Decorator 본문

웹 · 앱 개발/타입스크립트

데코레이터 6 - Accessor Decorator

huenuri 2024. 12. 28. 05:58

힘들지만 남은 2주 차 수업을 모두 다 듣고 취침해야겠다. 이번에는 Accessor 데코레이터에 대한 내용이다.


 

 

 

 

이론 6 - Accessor Decorator

 

 

 

 

target, Property Descriptor 등이 있다.

 

 

 

 

정규표현식을 넣어 사용할 수 있다.

 

 

 


 

 

 

 

퀴즈 6 - 접근자 데코레이터

 

 

이 문제도 아무것도 모르겠기에 헬퍼에게 물어보며 풀었다.

 

먼저, validate 함수에 regexp 문자열이나 정규표현식 객체를 전달해 보자. 그다음,validate 함수 안에서는 객체의 타입과 속성, 속성 설명자를 인수로 받는 콜백 함수를 정의할 수 있다. 접근자 데코레이터에서 getter와 setter 함수를 교체하기 위해 descriptor.set 값을 할당해야 한다.

그리고 actualFunction 변수에는 기존의 setter 함수를 저장하고, 새로운 decoratorFunc 함수를 만들 수 있다. decoratorFunc 함수 안에서는 regexpTarget 변수를 통해 전달받은 정규표현식 객체나 문자열을 생성한다. 이제 if 조건문을 활용해서 입력된 값이 정규표현식과 일치하는지 확인해 보자. 만약 일치하지 않으면, 에러 메시지를 출력하고 프로그램을 종료해야 한다. 마지막으로, decoratorFunc 함수를 descriptor.set 값으로 설정해서 해당 setter를 교체할 수 있다.


 

 

 

 

 


 

 

 

 

실습 4 - 접근자 데코레이터

 

 


 

 

 

문제 풀기

!가 있으면 값이 있다고 가정하게 만든다. value가 maxium보다 커질 때 에러 메시지를 출력하도록 한다.

 

 

 

 

이처럼 오류 메시지가 출력되었다.


 

 

 

 

학습을 마치고

어제 2주 차까지는 다 공부하고 취침하려고 했는데 너무 졸리기도 하고 집중이 되지 않아서 다 하지 못했다. 다음날 새벽 5시 반에 일어나서 학습을 이어가는 중이다.

어려워서 무슨 말인지는 거의 모르지만 그냥 수업을 듣고 문제를 풀어보았다.