<스코프 (Scope)에 대해>
스코프는 프로그램에서 변수가 접근 가능한 영역을 나타냅니다. 이는 코드 내에서 변수, 함수, 객체의 가시성과 생명주기를 결정합니다.
JavaScript에는 3가지 스코프 종류가 있습니다 :
- 전역 범위 : 함수나 블록 외부에 선언된 변수나 함수가 해당되며, 프로그램 어디서든 접근할 수 있습니다.
- 블록 범위 : 'let'이나 'const'를 사용하여 블록(중괄호 내)에서 선언된 변수는 블록 스코프를 가집니다. { } 에 있는 변수는 외부에서 접근이 불가합니다.
- 함수 범위 : 각 함수는 새로운 스코프를 생성합니다. 이 변수는 그 함수 내에서만 접근할 수 있습니다.
<스코프 종류 예시>
전역 범위 :
함수 범위 :
** 함수 스코프 내에 선언된 'let', 'var', 'const'는 비슷한 역할을 합니다.
블록 범위 :
** 블록 범위는 'let'와 'const' 선언만 차단하고 'var' 선언은 차단하지 않습니다.
'var' 로 선언된 변수는 블록 범위에서 차단되지 않고 함수 범위에서만 제한됩니다.
자동 전역 범위 : 변수에 값을 할당할 때 선언되지 않은 변수를 사용하면, 그 변수는 자동으로 전역 변수가 됩니다.
참고 :
https://developer.mozilla.org/ko/docs/Glossary/Scope
https://www.w3schools.com/js/js_scope.asp
'웹 개발 (Frontend Developer) > JavaScript' 카테고리의 다른 글
네이티브 객체 (Native Object) vs 호스트 객체 (Host Object) (4) | 2024.09.22 |
---|---|
JavaScript에서 호이스팅(Hoisting)이란 (1) | 2024.09.20 |
JavaScript Event Delegation (이벤트 위임) (2) | 2024.09.13 |
AJAX 이해하기 (3) | 2024.09.08 |
웹개발에 사용할 수 있는 추가 JavaScript 지식 (0) | 2024.08.26 |