2021-09-23 노션페이지,
2021-10-04 노션페이지
기록된 노션을 다시 정리
어려웠던 부분
- 클로저의 실제 사용 예시
- 익숙하지 않은 코드
클로저의 개념
- 클로저는 자바스크립트 고유의 개념이 아니다.
- 함수를 일급 객체로 취급하는 함수형 프로그래밍 언어에서 사용되는 중요한 특성이다.
클로저는 함수와 그 함수가 선언됐을 때의 렉시컬 환경(Lexical environment)과의 조합이다.
- 클로저는 반환된 내부함수가 자신이 선언됐을 때의 환경(Lexical environment)인 스코프를 기억하여 자신이 선언됐을 때의 환경(스코프) 밖에서 호출되어도 그 환경(스코프-종료된 내부)에 접근할 수 있는 함수
클로저의 활용
- 상태 유지
- 전역 변수의 사용 억제
- 정보의 은닉
function Counter() { // 카운트를 유지하기 위한 자유 변수 var counter = 0; // 클로저 this.increase = function () { return ++counter; }; // 클로저 this.decrease = function () { return --counter; }; }
본인 클로저 주요 정리
- 외부함수가 종료되었어도 내부에 선언된 변수에 접근할 수 있도록
- 의도치 못한 접근을 방지할 수 있음 => 안전함
참조: poiemaweb.com