지역변수와 관련이 있는 건데.. 우선

예제)

<script>

// 함수 선언

function text(name) {

var output = 'Hello' + name + '...!';

}

// 출력

alert(output);

</script>

 

위의 예제 함수안에 있는 변수는 지역변수 이므로, 함수 외부에서 사용할 수 없습니다.(alert)

지역변수는 함수가 실행될때 생성되고 함수가 종료될 때 사라진다. 하지만, 클로저란? 것을 사용하면 이 규칙을 위반할 수 있다.

 

예제)

<script>

// 함수선언

function outerFunction(name) {

var output = 'Hello' + name + '...!';

return function() {

return output;

}

}

// 변수선언

var first = outerFunction('JavaScript');

var second = outerFunction('jQuery');

// 출력

alert(first);

alert(second);

</script>

 

이걸 가능하게 하려고 클로저 함수 사용

+ Recent posts