컴퓨터 지식

[CS] 클로저 디자인 패턴(Closures D.P.)

bornsoon 2024. 10. 28. 11:41

클로저 패턴(Closures)

외부 함수의 변수에 접근하기 위해 내부 함수를 사용하는 패턴

(Scope chain에서 하나의 scope를 생성해주는 개념으로 생각할 수 있다.)

// Js
// 클로저 디자인 패턴(Closure D.P.)
// 함수를 반환하는 함수
  function cnt2() {
    let count = 0;
    return function() {
      return ++count;
    }
  }

  // 함수표현식
  let fn = cnt2();
  console.log(fn());    // 1
  console.log(fn());    // 2

 

클로저 :

주변 상태(어휘적 환경)에 대한 참조와 함께 묶인 (포함된) 함수의 조합.

즉, 클로저는 내부 함수에서 외부 함수의 범위에 대한 접근을 제공.

JavaScrtip에서 클로저는 함수 생성 시 함수가 생성될 때마다 생성됨.

[출저] https://developer.mozilla.org/ko/docs/Web/JavaScript/Closures

 

클로저 - JavaScript | MDN

클로저는 주변 상태(어휘적 환경)에 대한 참조와 함께 묶인(포함된) 함수의 조합입니다. 즉, 클로저는 내부 함수에서 외부 함수의 범위에 대한 접근을 제공합니다. JavaScript에서 클로저는 함수 생

developer.mozilla.org

 

 

 

728x90