본문 바로가기

Study/JS

스코프

 

 

 스코프란?

 

모든 식별자(변수이름, 함수이름, 클래스이름)는 자신이 선언된 위치에 의해

다른 코드가 식별자 자신을 참조할 수 있는 유효범위가 결정된다. 이를 스코프라 한다.

즉, 스코프는 식별자가 유효한 범위를 말한다.

 

 

 

 

 함수레벨 스코프 vs 블록레벨 스코프

 

함수레벨 스코프
코드블록이 아닌 함수에 의해서만 지역스코프가 생성된다.
var키워드로 선언된 변수는 오로지 코드블록(함수 몸체)만을 지역스코프로 인정한다.

 

블록레벨 스코프 
C나 JAVA등 대부분의 프로그래밍언어는 함수몸체만이 아니라

모든 코드블록(if,for,while, try/catch)등에서 지역스코프를 만든다.

let, const는 블록레벨스코프를 지원한다.

'Study > JS' 카테고리의 다른 글

원시타입과 참조타입  (0) 2022.09.29
this  (0) 2022.09.28
순수함수와 비순수함수  (0) 2022.09.23
콜백함수  (1) 2022.09.23
중첩함수  (0) 2022.09.23