클로저

이조은·2020년 12월 19일
1

TIL self-study

목록 보기
15/19

클로저

어떤 함수 A에서 선언한 변수 b를 참조하는 내부함수 C를 외부로 전달할 경우 A의 실행 컨텍스트가 종료된 이후에도 변수 b가 사라지지 않는 현상 - 코어 자바스크립트 👍

클로저 정의 from 다양한 서적

✔️ 클로저는 함수와 그 함수가 선언될 당시의 lexical environment의 상호관계에 따른 현상
✔️ 자신을 내포하는 함수의 컨텍스트에 접근할 수 있는 함수
✔️ 함수가 특정 스코프에 접근할 수 있도록 의도적으로 그 스코프에서 정의하는 것
✔️ 함수를 선언할 때 만들어지는 유효범위가 사라진 후에도 호출할 수 있는 함수
✔️ 이미 생명 주기상 끝난 외부 함수의 변수를 참조하는 함수
✔️ 자유변수가 있는 함수와 자유변수를 알 수 있는 환경의 결합

클로저 활용 사례

  • 콜백 함수 내부에서 외부 데이터를 사용하고자 할 때
  • 접근 권한 제어(정보 은닉)
  • 부분 적용 함수
  • 커링 함수
profile
싱글벙글

0개의 댓글