JS Closure

홍성표·2022년 6월 13일
0

클로저 함수(Closure function)

  • 함수 안에서 함수로 리턴하는 함수
function aaa() {
        const apple = 10;

        function bbb() {
          const banana = 20;

          console.log(apple);
          console.log(banana);
        }
        bbb();

        const qqq = 3;
      }
      aaa();

클로저 함수의 장점

  • 데이터를 보존할 수 있다.
    클로저 함수는 외부 함수의 실행이 끝나더라도 외부 함수 내 변수를 사용할 수 있다.
    클로저는 이처럼 특정 데이터를 스코프 안에 가두어 둔 채로 계속 사용할 수 있게하는 폐쇄성을 갖는다.

  • 정보의 접근 제한 (캡슐화)
    ‘클로저 모듈 패턴’을 사용해 객체에 담아 여러 개의 함수를 리턴하도록 만든다.
    이러한 정보의 접근을 제한하는 것을 캡슐화라고 한다.

  • 모듈화에 유리하다.
    클로저 함수를 각각의 변수에 할당하면 각자 독립적으로 값을 사용하고 보존할 수 있다.
    이와 같이 함수의 재사용성을 극대화 함수 하나를 독립적인 부품의 형태로 분리하는 것을 모듈화라고한다.
    클로저를 통해 데이터와 메소드를 묶어다닐 수 있기에 클로저는 모듈화에 유리하다.

profile
안녕하세요. 홍성표입니다.

0개의 댓글