devWonny
2021. 10. 19. 17:23
스코프 == 유효범위 == 블록 == 식별자 유효범위
모든 식별자(변수, 함수, 클래스 등)는 자신이 선언된 위치에 의해 다른 코드가
자신을 참조할 수 있는 유효 범위를 결정한다.
즉 유효 범위에 따라 식별자 이름이 동일해도 다른 폴더이다.
13.2 스코프의 종류
전역 global : 어디서든 사용 가능
지역 local : 자신의 지역 스코프, 하위 지역 스코프에서 유효함. 아래로.. 사용가능, 위로 사용 못함
13.3 스코프 체인
함수의 중첩: 함수 안에 함수가 정의됨
스코프 체인: 전역 > outer 지역 스코프 >inner 지역 스코프 : 스코프가 계층적으로 연결된 것.
변수가 선언 실행 -> 변수 식별자가 렉시컬 환경에 키로 등록 -> 변수 할당 -> 변수 식별자에 값을 변경
1. 스코프 체인에 의한 변수 검색
아래에서 상위의 변수를 자유롭게 꺼낼 수 있음
위에서 아래로 변수 참조 불가능
2. 스코프 체인에 의한 함수 검색
전역 foo 함수
지역 foo 함수