본문 바로가기
IT/Javascript

[Javascript] - 자바스크립트 렉시컬 스코프(Lexical Scope)란 ?

by 차이나는 개발자 2021. 7. 24.
728x90
반응형

#자바스크립트 렉시컬 스코프(Lexical Scope)란 ?

 

 

-자바스크립트 엔진은 함수를 어디서 호출했는지가 아니라 함수를 어디에 정의했는지에 따라 상위 스코프를 결정한다.

이를 렉시컬 스코프(정적 스코프)라 한다.

 

 

#예시

const x = 1;

function foo() {
  const x = 10;
  bar();
}

function bar() {
  console.log(x);
}

foo(); // 1
bar(); // 1

 

-렉시컬 환경의 "외부 렉시컬 환경에 대한 참조"에 저장할 참조값. 즉 상위 스코프에 대한 참조는 함수 정의가

평가되는 시점에 함수가 정의된 환경(위치)에 의해 결정된다. 이것이 바로 렉시컬 스코프다.

 

 

 

728x90
반응형

댓글