[JS] 유효범위

다인·2022년 7월 21일
0

JavaScript

목록 보기
5/9

유효범위(scope) : 변수의 수명

var vscope = 'global';  // 전역변수
function fscope() {
  var vscope = 'local';  //지역변수
  alert(vscope);  // local 출력됨. 
}
fscope();

불가피하게 전역변수를 사용해야하는 경우, 하나의 객체를 전역변수로 만들고 객체의 속성으로 변수를 관리.

var MYAPP = {} // 전역변수
MYAPP.calculator = {
  'left': null, 
  'right': null
}
MYAPP.coordinate = {
	'left': null, 
  	'right': null
}
MYAPP.calculator.left = 10;
MYAPP.calculator.right = 20;

JS는 함수에 대한 유효범위만 제공. ({}와 같은 블록에 대한 유효범위는 제공하지 않음)

JS는 함수가 선언된 시점에서의 유효범위를 갖음. (정적 유효범위, 렉시컬)

var i = 5;

function a(){
  var i = 10;
  b();
}

function b() {
	document.write(i);
}

a();  // 5. 사용될때가 아니라 정의될때의 전역변수 사용

profile
개발자국

0개의 댓글