자바스크립트에서 변수는 유효 범위에 따라 2가지로 구분된다.
1. 전역변수(global variable)
2. 지역변수(local variable)
1-1. 전역변수는 함수의 외부에서 선언된 변수를 의미한다.
1-2. 전역 변수는 프로그램의 어느 영역에서나 접근할 수 있으며, 웹 페이지가 닫혀야만 메모리에서 사라진다.
1-3. 전역 변수는 함수 외부뿐만 아니라 내부에서도 접근하여 변경할 수 있다.
2-1. 지역 변수(local variable)란 함수 내에서 선언된 변수를 의미한다.
2-2. 이러한 지역 변수는 변수가 선언된 함수 내에서만 유효하며, 함수가 종료되면 메모리에서 사라진다.
2-3. 함수의 매개변수 또한 함수 내에서 정의되는 지역 변수처럼 동작한다.
<script>
let Myname = "홍길동";
console.log(Myname); // able
function test() {
// 함수의 중괄호 안에 속한 이 영역은 local 영역입니다.
// local 영역 안에 정의된 자원들은 해당 local 영역 안에서만 사용할 수 있습니다.
let yourName = "김철수";
console.log(yourName); // able
}
function test2() {
// local 영역 안에서 바깥 영역에 정의된 자원들을 사용할 수 있습니다.
console.log(Myname);
test(); //test2입장에선 test()함수는 바깥영역이라 사용할 yourname변수를 사용할 수 있다.
}
// console.log(yourName); // disable
</script>