스코프

정지훈·2020년 12월 1일
0

스코프는 자바스크립트를 포함한 모든 프로그래밍언어의 기본적인 개념이다.

스코프는 식별자가 유효한 범위를 말한다.
(다른 코드가 식별자 자신을 참조할 수 있는 유효 범위)

자바스크립트 스코프는 함수가 선언된 그 위치에서 스코프가 정해진다.

var x = 'hello';

function foo() {
  console.log(x)
}

console.log(foo()); // hello

이런 식으로 지역 스코프에서 전역변수를 참조할 수 있다.

즉 변수가 스코프 내에 없을때 상위 스코프에서 찾아 들어간다.

자바스크립트 스코프는 렉시컬 스코프이다. 그 함수가 호출과는 상관 없이 함수가 선언된 위치에서 스코프가 정해진다.

함수 내부는 지역 스코프이고 만약 또 함수가 중첩해 있으면 지역 스코프가 만들어진다.

지역 스코프 - 지역 스코프 - 전역 스코프 이런식으로 체인처럼 엮어져 있는데 이런 함수가 함수의 중첩에 의해 계층적 구조를 갖게 되는 것이 스코프 체인이다.

일단 이렇게 스코프가 이루어지고 실행 컨텍스트에 공부하게 되면 스코프의 실체가 어떤 것이고 체인이 어떤 식으로 만들어 지는지 알게 될 예정입니다.

0개의 댓글