Front/Javascript
[Javascript] 자바스크립트 함수의 범위 (scope)
JongHyun99
2021. 1. 21. 20:29
728x90
JavaScript에는 스코프라는 유형으로 변수를 구분하여 변수에 접근한다.
스코프에는 두 가지 유형의 범위가 있다.
- 지역 범위(local scope)
- 전역 범위(global scope)
-변수 스코프(적용 범위)
: 전역 범위 - 코드 전체에 선언되는 변수의 범위
: 지역 범위 - 코드 중 특정 범위에서 선언되는 변수의 범위
: 함수 범위 : 함수 내부 영역에 선언되는 변수의 범위
: 블럭 범위 : if, for 같은 구문 블럭 내부 영역에 선언되는 변수의 범위
한마디로 전역범위는 어디에서든 사용할 수 있고 지역범위는 선언한 블럭에서만 사용할 수 있다는 것
let은 ES6에 추가된 변수 타입 키워드로 var과 기능면에서 다른점이 없지만
var은 호이스팅(선언을 호출 밑에다 하는 것)이 되거나 전역, 지역 선언 상관없이 사용되어 코드가 꼬일 우려가 있어
let사용을 권장한다.
추라고 ES6에서 const라는 변수 타입 키워드도 추가되었으며 이 키워드는 변수를 상수로 사용해야할 때 (변하지않는 값)
사용한다.