[TIL] var, let, const 의 차이점

Kyeong_Bong·2022년 6월 19일
0

TIL

목록 보기
9/18
post-thumbnail

var, let, const 코드를 짜면서 항상 사용하지만 그냥 사용해야하니 사용해왔다.
이왕이면 알고 쓰면 좋을거같아서 정리 해본다.

var

  • var는 매우 큰 단점을 가지고있다.
var a = "변수 선언"
console.log(a) // 변수 선언

var a = "벼어언수 서어언언"
console.log(a) // 벼어언수 서어언언

위와 같이 한번 더 선언을 해도 에러가 나지 않고 각기 다른 값을 출력한다.
얼핏 볼때 좋은거 아닌가? 싶을지도 모르지만 코드량이 많아지면 어디서 어떻게 사용되는지 추적도 어려울 뿐더러 값이 바뀌어서 들어갈수도 있다.
이러한 문제를 해결하기 위해서 ES6에서 let과 const가 나오게 되었다.

let

  • 위의 예시를 let으로 바꿔서 다시 실행하면
let a = "변수 선언"
console.log(a) // 변수 선언

let a = "벼어언수 서어언언"
console.log(a) // SyntaxError: Identifier 'a' has already been declared

다음과 같이 이미 선언되어있다 라는 에러가 나오게 된다.( const도 동일하다. )
변수의 재선언이 되지 않는 것 이다. 하지만 let은 재할당은 가능하다.

let a = "변수 선언"
console.log(a) // 변수 선언

let a = "벼어언수 서어언언"
console.log(a) // SyntaxError: Identifier 'a' has already been declared

a = "재할당!!"
console.log(a) // 재할당!!

const

  • const는 변수 선언중 가장 엄격한 친구이다.
let a = "변수 선언"
console.log(a) // 변수 선언

let a = "벼어언수 서어언언"
console.log(a) // SyntaxError: Identifier 'a' has already been declared

a = "재할당!!"
console.log(a) // Uncaught TypeError: Assignment to constant variable.

다음과 같이 재할당도 허용되지 않는다.

될수있으면 const를 사용하고 재할당이 필요한 경우에만 let을 사용하도록 하자 var는 봉인....

profile
Junior Developer🔥

0개의 댓글