Language | Basic/JavaScript

[JavaScript 스터디] 스코프

주정용 2021. 1. 24. 22:24
728x90
  • 식별자가 유효한 범위
  • 식별자를 검색할 때 사용하는 규칙
  • 네임스페이스

종류

  • 전역 스코프 : 코드의 가장 바깥 영역

  • 지역 스코프 : 함수 몸체 영역

  • 전역 변수는 어디서든 참조 가능

  • 지역변수는 자신의 지역 스코프와 하위 스코프에서만 참조 가능

스코프 체인

  • 스코프는 함수 중첩에 의해서 계층적인 구조를 띰
  • 자바스크립트 엔진은 변수를 참조할 때 변수 참조 코드의 스코프에서부터 바깥 스코프 방향으로 변수를 탐색함
  • 상위 스코프의 변수는 하위 스코프에서 참조 가능
  • 하위 스코프의 변수는 상위 스코프에서 참조 불가능

함수 레벨 스코프

  • 함수에 의한 지역 스코프
  • var 키워드로 선언한 변수는 함수의 코드 블록(몸체)만을 지역 스코프로 함

렉시컬 스코프

  • 함수를 어디서 정의했는지에 따라 상위 스코프 결정
  • 함수를 정의한 위치를 기준으로 스코프 결정
  • 함수가 호출된 위치는 상위 스코프 결정에 어떠한 영향도 끼칠 수 X
  • 상위 스코프는 정의된 스코프
  • 함수 객체는 정의된 몸체를 기준으로 스코프를 기억함

학습 도서

  • '모던 자바스크립트 Deep Dive', 이웅모 저, 위키북스

http://www.kyobobook.co.kr/product/detailViewKor.laf?mallGb=KOR&ejkGb=KOR&linkClass=3314&barcode=9791158392239