Scope 는 무엇인가?
- 스코프는 참조 대상 식별자(identifier, 변수, 함수의 이름과 같이 어떤 대상을 다른 대상과 구분하여 식별할 수 있는 유일한 이름)를 찾아내기 위한 규칙이다.
- 자바스크립트는 이 규칙대로 식별자를 찾는다.
Scope 의 구분
자바스크립트에서 스코프를 구분해보면 다음과 같이 2가지로 나눌 수 있다.
전역 스코프 (Global scope)
지역 스코프 (Local scope or Function-level scope)
- 함수 코드 블록이 만든 스코프로 함수 자신과 하위 함수에서만 참조할 수 있다.
모든 변수는 스코프를 갖는다. 변수의 관점에서 스코프를 구분하면 다음과 같이 2가지로 나눌 수 있다.
전역 변수 (Global variable)
- 전역에서 선언된 변수이며 어디에든 참조할 수 있다.
지역 변수 (Local variable)
- 지역(함수) 내에서 선언된 변수이며 그 지역과 그 지역의 하부 지역에서만 참조할 수 있다.
출처:
https://poiemaweb.com/js-scope
https://www.nextree.co.kr/p7363/
(영문 해석)
Scope in JavaScript defines accessibility of variables, objects and functions.
There are two types of scope in JavaScript.
- Global scope
- Local scope
Global Scope
- Variables declared outside of any function become global variables.
- Global variables can be accessed and modified from any function.
Local Scope
- Variables declared inside any function with var keyword are called local variables.
- Local variables cannot be accessed or modified outside the function declaration.
Source: https://www.tutorialsteacher.com/javascript/scope-in-javascript