var, let, const
- JavaScript 에서 변수의 선언은
var
, let
, const
키워드로 가능하며, ES6 에서 let
과 const
가 추가 되었다.
var 키워드의 문제점
- 변수 중복 선언이 가능하여, 예기치 못한 값을 반환할 수 있다.
- 함수 레벨 스코프로 인해 함수 외부에서 선언한 변수는 모두 전역 변수로 된다.
- 변수 선언문 이전에 변수를 참조하면 언제나
undefined
를 반환한다.
let
- let 키워드는 변수 중복 선언이 불가능하지만, 재할당은 가능하다.
const
- 중복 선언도, 재할당도 모두 불가능하다.
- 재할당의 경우 원시값은 불가능하지만, 객체는 가능하다.
정리
var
보다는 let
과 const
를 사용하도록 하자.