본문 바로가기
javaScript/J Query & 스크립트

var let const 차이

by mooyou 2022. 2. 9.
728x90
300x250

자바 스크립트에서 변수를 사용할 때 var let을 사용한다.

같은 변수이지만 각각 차이점을 가지고 있다.

 

var
var test = 200;
document.write(test,"<br>") //200
var test = 300;
document.write(test,"<br>") //300
test = 400;
document.write(test,"<br>") //400

위의 예시를 살펴보면 test 변수에 초깃값 200을 설정하였으나 다시 300으로 재설정하였을 때 300으로 변경되는 걸 확인할 수 있다. 또 새로운 값 400을 넣었을 때도 문제없이 변경되는 걸 확인할 수 있다.

이렇게 변수를 재선언할때 마다, 값을 변경할 때마다 아무런 에러 없이 변경되면 간단한 테스트에는 편리할 수 있으나 여러 명이 함께하는 복잡한 코드에서는 값이 바뀌어서 오류가 날 수도 있고 관리하기가 힘들어지기 때문에 적합하지 않은 변수 선언 방식이다.

 

위와 같은 var변수의 단점을 보완하여 EX6이후 추가된 변수 선언 방식이 let과 const이다.

 

 

let
let test = 200;
document.write(test,"<br>") //200
test = 400;
document.write(test,"<br>") //400

위에 var 변수 예제를 let로 변경해서 넣어 보면 새로 값을 넣었을때 var 변수와 마찬가지로 변경되는 걸 확인할 수 있다.

그러나 let변수로 재선언을 해보면 차이를 할 수 있다.

let test = 200;
document.write(test,"<br>") //200
let test = 300;
document.write(test,"<br>") //에러

let 변수는 한번 설정 한 변수를 다시 재설정 하려고 하면 에러가 발생한다.

 

 

 

const

const는 상수이다. 변하지 않는 수를 의미하는데 한번 값을 할당한 후에는 재할당이 불가능하다.

그렇다면 let과 const의 차이점은 무엇인가?

const test = 200;
document.write(test,"<br>") //200
test = 400;
document.write(test,"<br>") //에러

const는 같은이름으로 재선언 하는 것은 물론 let 변수와 다르게 값을 재할당 하는 것도 불가능하다.

 

 

 

정리하면

  • var 변수는 값을 선언했어도 언제든지 재선언, 재할당이 가능하다.
  • let 변수는 값을 재선언 하는 것은 불가능 하지만 재할당은 가능하다.
  • const 상수는 재선언, 재할당 모두 불가능하다.

 

728x90
반응형

댓글