JavaScript를 처음 공부할 때 var만 있었던 것 같은데 어느 새 다시 보니 let, const라는 것이 생겼다. const는 그나마 다른 언어에서 본 적이 있지만, let은 정말 생소하다. 처음 봤을 때 떠오른 것은 그나마 kotlin의 .let
어쨋든 간단히 차이를 정리하면
var는 호이스팅 매커니즘이 작용하며, let, const는 그렇지 않다.
개인적으로 쉽게 받아들이기 위해 아래와 같이 이해했다.
- let: 일반적으로 우리가 아는 변수
- const: 일반적으로 우리가 아는 상수
- var: 변수이긴 변수인데, 호이스팅 매커니즘이 작용하는 변수 (아주 특이한 놈)