스코프 (scope)

Posted by Seongkyun Yu on 2020-02-26
Estimated Reading Time 1 Minutes
Words 135 In Total
Viewed Times

스코프

  • 스코프란?

    다른 코드가 변수를 참조할 수 있는 유효 범위이다.


스코프의 종류

  • 전역 스코프

    전역 변수는 전역 스코프를 가지고 있으며, 어디서든지 참조할 수 있다.

  • 지역 스코프

    지역 변수는 자신이 선언된 지역 스코프와 하위 지역 스코프에서 유효하다.


스코프 체인

변수가 선언 됐는지 확인하기 위해서 변수를 찾을 때 상위 스코프를 따라가며 변수를 찾는다.
하위 스코프 방향으론 찾지 않는다.


함수 레벨 스코프

ES5의 경우 함수에 의해서만 지역 스코프가 생겼다.
따라서 var로 선언된 변수의 경우 함수의 코드 블록 만을 지역 스코프로 인정한다.
이러한 특성을 함수 레벨 스코프라고 한다.

ES6에서 지원하는 let과 const를 사용하면 블록 레벨 스코프를 적용할 수 있다.


렉시컬 스코프

  • 동적 스코프: 함수가 호출되는 시점에 동적으로 상위 스코프를 결정

  • 렉시컬(정적) 스코프 : 함수가 평가되는 시점에 상위 스코프가 정적으로 결정

자바스크립트는 함수를 정의한 위치에 따라 상위 스코프를 결정한다.

따라서 렉시컬 스코프를 따른다.


참고자료: poiemaweb.com


If you like this blog or find it useful for you, you are welcome to comment on it. You are also welcome to share this blog, so that more people can participate in it. If the images used in the blog infringe your copyright, please contact the author to delete them. Thank you !