var, let, const 차이점이 뭐에요? 설명해보세요
JavaScript에는 세가지 방식의 변수 선언 방식이 있다.
JavaScript에서 변수 선언 방식인 var let const 차이점에 대해 알아보자
var는 여러번 선언해도 에러가 나오지 않는다.
이는 테스트에 편리할 수도 있지만, 코드량이 많아지면 굉장히 복잡해져서 위험하다.
ES6이후 이를 보완하기 위해 추가된 것이 let과 const이다.
let과 const는 변수 재선언에서 오류가 뜬다.
그렇다면 둘의 차이점은 무엇일까?
둘의 차이점은 immutable여부이다.
let은 변수에 재할당 가능
const는 변수 재선언, 재할당 모두 불가능
또한 var는 함수 레벨 스코프 이고
let, const는 블럭 레벨 스코프이다.
var로 선언한 변수는 선언 전에 사용해도 에러x
var,let은 변수 선언시 초기값을 주지 않아도 o
const는 반드시 초기값을 할당해야함
var, let, const 모두 호이스팅은 되지만
var의 경우는 undefined로 초기값으로 메모리할당
TDZ(Temporal Dead Zone)
출처