본문 바로가기

JAVASCRIPT

클로저1

클로저 (closure)는 내부함수가 외부함수의 맥락에(context)에 접근 할수 있는 것을 가르킵니다. 클로저는 자바스크립트를 이용한 고난이도의 테크닉을 구사하는데 필수적인 개념으로 활용됩니다.

 

내부함수

 

자바스크립트는 함수 안에서 또 다른함수를 선언할수 있습니다. 

 

function outter() {
	function inner(){
           let title= 'coding evertbody';
           alert(title);
           
        }
        inner();
   }
   outter();

 

출력하면 coding everybody가 출력됩니다.

 

outter함수는 외부함수입니다. 안에 있는 inner()함수가 내부함수입니다. 

 

다시 말해보자면 inner()함수는  let inner =function{} 와 같습니다.

 

 

 

내부 함수는 외부함수의 지역변수에 접근할 수 있다. 아래의 예제를 보자. 결과는 coding everybody이다.

function outter() {
	let title='coding everybody'
           function inner(){
           alert(title);
           }
        inner();
     }
outter();

 

이것을 바로 클로저라고 합니다

'JAVASCRIPT' 카테고리의 다른 글

arguments  (0) 2020.11.03
클로저2  (0) 2020.11.02
콜백 -처리의 위임  (0) 2020.11.01
함수의 용도2  (0) 2020.11.01
값으로서의 함수  (0) 2020.11.01