[JS] Scope

이성우·2024년 11월 16일

❓스코프란?

변수나 함수가 접근할 수 있는 범위(변수의 영역) 입니다.

🔎 스코프 종류

1. Global Scope

  • 코드의 어느 곳에서든 접근 가능한 범위입니다.
  • 전역 변수는 어플리케이션이 종료될 때까지 메모리에 남아있습니다.

2. Function Scope

  • 함수 내부에서 선언된 변수는 해당 함수 내부에서만 접근 가능합니다.
  • var로 선언된 변수는 해당 스코프를 가지게 됩니다.

3. Block Scope

  • 중괄호({}) 내부에서 선언된 변수의 범위
  • letconst로 선언된 변수는 이 스코프를 가지게 됩니다.

🔎 스코프 특징

1. Scope Chain

  • 내부 스코프에서 외부 스코프의 변수에 접근 가능합니다.
  • 외부에서 내부로는 접근 불가능합니다.

2. Lexical Scope

  • 함수가 선언된 위치에 따라서 상위 스코프가 정해집니다.
  • 실행 위치가 아닌 선언 위치가 중요합니다.
profile
안녕하세요!

0개의 댓글