자바스크립트 스코프

배기호 Notebook·2023년 7월 18일
0

JavaScript

목록 보기
7/13

자바스크립트_스코프

현재 실행되는 컨텍스트
(컨텍스트란 값과 표현식이 표현되거나 참조 될 수 있음을 의미한다.)

만약 변수 또는 표현식이 '해당 스코프'내에 있지 않다면 사용할 수 없다.

또한 스코프는 계층적인 구조를 가지기 때문에 하위 스코프는 상위 스코프에 접근할 수 있지만 반대는 불가능하다.

function  exampleFunction () {
	var x = 'declared inside function'
	// x는 오직 exampleFunction 내부에서만 사용	
	console.log('Inside fuction');
	console.log(x);
}

console.log(x);	// err

위와 같이 스코프를 생성하는 함수 내에 정의된 변수는 외부 함수나 다른 함수 내에서는 접근할 수 없다.

var x = 'declared inside function';

exampleFunction();

function exampleFunction() {
	console.log('Inside function');
	console.log(x);
}

console.log('Outside function');
console.log(x);

위와 같이 변수가 외부의 전역에서 선언된 경우 유효하다.

!!!
JavavScript 에서 var로 선언한 변수에 대해서 오직 함수에 의해서만 스코프가 생성된다.

참고
MDN web docs

1개의 댓글

comment-user-thumbnail
2023년 7월 18일

좋은 글 감사합니다!

답글 달기