불친절한 블로그

[JavaScript] var, let, const 어떤순간 어떻게 써야하지? 본문

Etc/Study

[JavaScript] var, let, const 어떤순간 어떻게 써야하지?

오누! 2022. 2. 9. 11:03
반응형

ES6 이후부터 'let'과 'const'가 등장했다.

기존에는 변수를 선언할 때, 'var'를 많이 썼었는데

새로 추가된 'let'과 'const'는 'var'와 어떻게 다른지 확인해봐야겠다.

 

아래의 예제를 보면 'name'으로 선언을 두번 했지만 'var'의 경우 에러가 나지 않는다.

간단한 테스트라면 문제가 없겠지만 복잡한 코드에서 에러가 발생했을 때,

문제파악이 힘들어지고, 값도 바뀔 가능성이 있다.

 

'let'과 'const'는 같은 이름으로 재선언이 불가능하다.

 

그럼 'let'과 'const'의 차이는 무엇인가?

재할당의 차이가 있다.

재할당은 변수의 값을 변경하는 작업이다.

'let'은 재할당이 가능하다.

 

'const'는 재할당이 불가능하다.

 


추가적으로 'var'의 사용할 수 있는 범위는 함수단위이고, 'let'과 'const'는 블록범위이다.

옛날에 c언어를 공부할 때, 지역변수, 전역변수처럼 

'var'는 함수 안에서 값이 유지가 된다.

 

반면, 'let'과 'const'는 블록범위이기 때문에 블록이 다르면 값을 유지하지 않는다.

 

반응형
Comments