변수 선언 키워드(var, let, const)의 차이점과 활용 방법
var, let, 그리고 const는 JavaScript에서 변수를 선언하는 세 가지 다른 키워드입니다.
이들 간에는 중요한 차이점이 있습니다.
1. var (Function-scoped)
var는 함수 범위(function-scoped) 변수를 선언하는 데 사용됩니다.
var로 선언한 변수는 함수 내부에서 선언된 경우 함수 내에서만 유효합니다.
함수 외부에서 선언된 var 변수는 전역 변수로 동작하며, 프로그램의 어디서든 접근이 가능합니다.
호이스팅(hoisting)이 발생하여 변수가 선언되기 전에도 사용할 수 있습니다.
최신 버전의 JavaScript에서는 let과 const를 주로 사용하며,
var는 더 이상 권장되지 않는 키워드입니다.
2. let (Block-scoped)
let은 블록 범위(block-scoped) 변수를 선언하는 데 사용됩니다.
let으로 선언한 변수는 블록 {} 내에서 유효하며, 블록 외부에서는 접근할 수 없습니다.
호이스팅이 발생하지만, 변수가 선언되기 전까지는 사용할 수 없습니다. (TDZ - Temporal Dead Zone)
3. const (Block-scoped 상수)
const는 블록 범위(block-scoped) 상수를 선언하는 데 사용됩니다.
const로 선언된 변수는 재할당이 불가능합니다. 즉, 한 번 값을 할당하면 변경할 수 없습니다.
블록 외부에서 접근할 수 없으며, 호이스팅과 TDZ가 발생합니다.
* var : ES6 이전에 사용되었으며, 최신 JavaScript에서는 사용을 권장하지 않음.
* let : 변수를 재할당해야 하거나 블록 범위 변수를 필요로 할 때 사용.
* const : 값이 변하지 않는 상수를 사용하거나 변수를 재할당하지 않는 경우 사용. (단, 객체와 배열의 경우 내부 값은 변경 가능)
'IT > JavaScript' 카테고리의 다른 글
[JavaScript] 더 깔끔한 코드를 위해, ES6 펼침 연산자의 다양한 활용법과 장점 (0) | 2023.07.16 |
---|---|
[JavaScript] ES6의 문자열 표기법 : 가독성과 효율성을 높이는 '템플릿 리터럴' 활용 (0) | 2023.07.16 |
[JavaScript] 자바스크립트의 블록 유효 범위 이해하기! (0) | 2023.07.16 |
[JavaScript] 화살표 함수, 나머지 매개변수, 기본 매개변수: ES6 함수 호출식 (0) | 2023.07.15 |