1. 클로저 (Closure)
ㅇ 함수와 함수의 참조환경
ㅇ 부모 함수 내 지역 변수의 참조를 갖는 자식 함수의 블록
- 어떤 부모 함수가 그 내부에 있는 자식 함수를 호출할 때,
- 자식 함수가 그 부모 함수의 지역 변수를 참조하는 경우
2. 클로저의 특징
ㅇ 변수를 은닉하여 지속성을 보장할 수 있는 등
- 특정 스코프 내 함수를 정의하면,
- 해당 스코프는 더 오래 유지 됨
ㅇ 접근 못하던 것에 대한 접근 방법이 생김
- 함수를 정의해서 클로저를 만들면,
- 접근할 수 없었던 것들에 대해 접근할 방법이 생김
ㅇ 데이터와 데이터를 조작하는 함수를 하나로 묶을 수 있음
- 마치 객체지향 프로그래밍과 유사하게 취급 가능
. 클로저를 감싸고 있는 부모 함수 => 생성자
. 클로저를 참조하는 외곽 함수 내 지역 변수 => 프로퍼티
. 클로저 자신 => 메소드
. 함수 호출 = > 인스턴스화
. 반환되는 클로저를 대입하게된 변수 => 인스턴스
ㅇ [자바스크립트]
- 자바스크립트의 모든 함수는, 클로저를 정의 가능
1.
2.
3.
4.
5.
6.
7.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
1.
2.
3.
4.
5.
6.
7.