변수의 선언, 할당, 초기화
- 선언(Declaration) : 변수를 생성하는 행위 또는 시점
- 할당(Assignment) : 선언된 변수에 값을 저장하는 행위 또는 시점
- 초기화(Initialization) : 선언된 변수에 처음으로 값을 저장하는 행위 또는 시점
변수 선언
키워드 |
재선언 |
재할당 |
스코프 |
비고 |
let |
X |
O |
블록 스코프 |
ES6부터 도입 |
const |
X |
X |
블록 스코프 |
ES6부터 도입 |
var |
O |
O |
함수 스코프 |
사용 권장 안함 |
let
- 재할당 가능, 재선언 불가
- 블록 스코프를 갖는 지역 변수를 선언
- 선언과 동시에 원하는 값으로 초기화
const
- 재할당과 재선언 불
- 선언과 동시에 값을 초기화
- 단, 선언 시 반드시 초기값을 설정해야 하며, 이후 값의 변경은 불가
- let과 동일하게 블록 스코프를 가짐
var
- 재할당과 재선언 가능
- ES6 이전에 변수를 선언할 때 사용되던 키워드
- 호이스팅이 발생하여 예기치 못한 문제가 생길 수 있음