본문 바로가기
Javascript

JAVASCRIPT 변수의 유효범위

by titlejjk 2023. 4. 21.

JAVASCRIPT 변수의유효범위

변수의 유효범위(variable scope)

자바스크립트에서 객체나 함수는 모두 변수(variable)이다.

변수의 유효범위(scope)란 해당 변수가 접근할 수 있는 변수, 객체 그리고 함수의 집합을 의미한다.

자바스크립트에서 변수는 유효 범위에 따라 다음과 같이 구분된다.

  1. 지역변수 (local variable)
  2. 전역변수 (global variable)

1. 지역변수 (local variable)

지역 변수(local variable)란 함수 내에서 선언된 변수를 가리킨다.

이러한 지역 변수는 변수가 선언된 함수 내에서만 유효하며, 함수가 종료되면 메모리에서 사라진다.

함수의 매개변수 또한 함수 내에서 정의되는 지역 변수처럼 동작한다.

예제 👉

function localNum(){
	var num = 10; //지역 변수 num에 숫자 10을 대입함.
	document.write("함수 내부에서 변수 num의 타입은" + typeof num + "입니다.<br>");
} //number
localNum();   //함수 localNum()을 호출함.
document.write("함수의 호출이 끝난 뒤 변수 num의 타입은" + typeof num + "입니다.");
							//undefined

🙋‍♂️자바스크립트에서는 선언되지 않은 변수를 사용하려고 하거나 접근하려고 하면 오류를 발생시킨다. 하지만 선언되지 않은 변수에 대한 typeof연산자의 결괏값은 undefined 값을 반환한다.

2. 전역변수 (global variable)

전역변수(global variable)란 함수의 외부에서 선언된 변수를 가리킨다. 이러면 전역 변수는 프로그램의 어느 영역에서나 접근할 수 있으며, 웹 페이지가 닫혀야만 메모리에서 사라진다.

예제 👉

var num = 10; // 전역 변수 num을 선언함.
function globalNum() {
    document.write("함수 내부에서 변수 num의 값은 " + num + "입니다.<br>"); // 10
    num = 20; // 전역 변수 num의 값을 함수 내부에서 변경함.
}
globalNum();  // 함수 globalNum()을 호출함.
document.write("함수의 호출이 끝난 뒤 변수 num의 값은 " + num + "입니다."); // 20

'Javascript' 카테고리의 다른 글

JAVASCRIPT 논리연산자  (0) 2023.04.24
JAVACSRIPT 산술연산자  (0) 2023.04.24
JAVASCRIPT 배열  (0) 2023.04.21
JAVASCRIPT 함수  (0) 2023.04.21
JAVASCRIPT의 변수  (0) 2023.04.19

댓글