const, let, var 무엇을 써야하나요?

안녕하세요,
그동안 es6문법을 사용할 기회가 없었는데, 요즘 조금씩 배워가고 있습니다.

const , let , var 와 관련된 많은 글들… 중에서도
호이스팅이나 스코프에 관한 글은 있어서 읽어봤으나
요즘 환경이 급변하고 있는 것 같아 기준을 잡기가 모호하네요.

주로 어떤 기준에 const , let , var 를 사용하는지 궁금합니다.

그중에서도 가장 궁금한 부분은

  1. const 같은 경우는 상수 같은 개념인것 같은데 강의를 보다보면
    생각보다 const로 변수를 선언하는 경향이 많아서 어떻게 생각하시는지 궁금합니다.

  2. 반복문에서 let 의 재할당 때문에 성능상 var가 좋다는 글이
    2017년에 작성되어 읽어 보았습니다만
    요즘 경우는 어떻게 최적화가 되었는지 궁금합니다.

그래서 결론적으로 dom 을 할당 때는 const , 재할당이 필요하면 let, 반복문에서는 var
이렇게 쓰는게 적당할까요?

var는 잊으세요. 반복문은 let 쓰면 됩니다.
let 은 var 의 블록 단위 변수입니다. 재할당 할때도 쓰면 됩니다.
const 는 많이 쓰는 이유가 자바스크립트 개발하다 보면 알겠지만 변수 재활용하는 일이 별로 없습니다.
그래서 이런 재활용 방지 보장을 받는 역할을 하는 const를 많이 쓰고, 추천하고 있죠.
결론: 왠만하면 const 쓰고 반복문 같은 곳 등 재할당이 필요하면 let, 그리고 var 는 호환성 외에는 잊으세요.

1 Like

var와 let의 성능차에 대한 글인데 참고하세요.

요지는 2017년 1월 기준으로 큰 성능차가 없다는 것입니다. 해당 글에서 2016년엔 var가 더 빨랐다는 말을 보면 let의 성능향상이 이뤄지고 있다는 것일테고,
만약 그렇다면 아마 2020년을 바라보는 지금은 let이 더 나을지도 모르겠네요.

네, 저도 찾아봤지만 2017년 이후로는 이 주제로 글이 올라온 것을 본 적이 없어서
궁금했는데, 이정도면 최적화가 이뤄졌다고 보는게 나을까요… 아니면 반대일까요 ㅎㅎ