함수를 반환하는 함수와 클로저

CODEDRAGON Development/JavaScript, jQuery, ...

반응형

   

 

 

함수를 반환하는 함수와 클로저

  • 익명함수를 반환하는 함수
  • 클로저의 사용
  • 클로저란   

 


 

 

- 익명함수를 반환하는 함수

   

function outerFunction() {
return function () {
alert('Hello World .. !');
};
}
outerFunction()();

   

 

 

- 클로저의 사용

함수 안에 있는 변수는 지역 변수이므로 외부에서 사용할 수 없습니다.

클로저를 사용하면 이 규칙을 위반하여 지역변수를 사용할 수 있도록 할 수 있습니다.

   

익명함수를 반환하는 함수에 지역변수가 있으면 익명함수는 클로저 함수로서 지역변수를 가져다 쓸 수 있습니다.

   

 

 

클로저란

- 지역 변수를 남겨두는 현상

- 함수 outerFunction()로 인해 생성된 공간

- 함수 outerFunction() 내부의 변수들이 살아있음

- 리턴되는 함수 자체

- 살아남은 지역 변수

   

function outerFunction(name) {
var output = 'Hello ' + name + '.. !';
return function () {
alert(output);
};
}
outerFunction('play')();
  

   

   

 

'Development > JavaScript, jQuery, ...' 카테고리의 다른 글

콜백함수 (callback function)  (0) 2022.01.24
자바스크립트 내장 함수  (0) 2022.01.22
내부 함수  (0) 2022.01.21
함수의 return 값 활용  (0) 2022.01.20
가변인자 함수  (0) 2022.01.20