본문 바로가기

카테고리 없음

[JavaScript] 내부함수(Inner Function)

내부함수(Inner Function) 

내부함수는 함수 안에 선언된 함수이다. 내부함수는 선언된 함수에서만 호출이 가능하다.


자바스크립트는 동일한 이름의 함수를 만들어도 에러가 발생하지 않는다. 이처럼 기존 함수를 덮어씌우는 것을 OverWrite라고 한다.

function display() {
	alert("display 함수의 명령 실행-1");
}
	
//동일한 이름의 함수 선언 가능 - 기존 함수 덮어씌우기(OverWrite)
function display() {
	alert("display 함수의 명령 실행-2");	
}	
display();//display 함수의 명령 실행-2

 

함수가 종료되면 내부함수가 소멸되기 때문에 함수 외부에서 호출할 수 없다.

function outer() {
	//내부함수 선언 - 함수가 종료되면 내부함수 소멸 
	function inner() {
		alert("inner 함수의 명령 실행");
	}
    
	inner();//내부함수는 선언된 함수 내부에서만 호출 가능
}
	
outer();//[inner 함수의 명령 실행]
inner();//내부함수는 함수 외부에서 호출 불가능

 

함수 내부에 익명함수를 선언하여 호출하는 것이 가능하다.

function outer() {
	//함수 내부에 익명함수를 선언하여 호출
	(function() {
		alert("익명함수의 명령 실행");
	})();
}
	
outer();//[익명함수의 명령 실행]