호지

[JS 스터디] 코어 자바스크립트 5강 클로저 본문

Front-end

[JS 스터디] 코어 자바스크립트 5강 클로저

_hoji

1. 클로저란 무엇인가?

어떤 함수 A에서 선언한 변수 a를 참조하는 내부함수 B를 외부로 전달한 경우, 함수 A의 실행 컨텍스트가 종료된 이후에도 변수 a가 사라지지 않는 현상.(이미 생명 주기가 끝난 외부 함수의 변수를 참조하는 함수)

 

2. 클로저에서 메모리 관리는 어떻게 이뤄지나요?

클로저가 사용되었다가 필요성이 사라진 시점에 메모리를 소모하지 않도록 null이나 undefined를 할당하여 참조 카운트를 0으로 만든다. 따라서 클로저에서 메모리를 소모하는 것은 클로저의 특성일 뿐, 메모리 누수의 위험이 있다고 할 수 없다.

 

3. 클로저는 어떻게 활용할 수 있나요?

클로저는 정보은닉 및 부분 적용 함수에 사용될 수 있다.

Comments