ෆ ⋆ ₊ ゚ ☽ * ₊ ⋆

카테고리 없음

[CS] var, let, const의 차이점은 무엇일까?

우당탕가윤 2024. 4. 5. 12:18

오늘은 js 변수 선언 방식 var, let, const의 차이점에 대해 알아보자!


목차

  1. var
  2. let
  3. const
  4. var vs let vs const

01. var란 무엇일까?

var name = 'kim';
console.log(name); // kim

name = 'park';
console.log(name); // park

var name = 'lee';
console.log(name); // lee

var는 원조 변수 선언 방식으로, 위와 같이 선언한 변수가 동일한 이름으로 중복 선언이 가능하다. 마지막에 할당된 값이 최종 변수에 저장되는 형식이다.

간단한 코드가 아닌 복잡한 코드에서 동일한 이름의 변수가 여러번 선언되어 사용되면 어떤 부분에서 값이 변경되는지, 문제가 발생되는지 알 수 없다. 그리하여 나온 추가 변수선언 방법이 바로 let과 const인 것이다.

 

02. let이란 무엇일까?

let name = 'kim';
console.log(name); // kim

name = 'park';
console.log(name); // park

let name = 'lee'; // 중복 선언 시 Error 발생!
console.log(name); // SyntaxError: Identifier 'name' has already been declared

let은 var와 달리 중복 선언 시, error가 발생하며 위와 같은 에러 메시지가 나온다. 중복 선언을 하는 것은 불가능하지만 값을 재할당 하는 것은 가능하다.

 

03. const란 무엇일까?

const name = 'kim';
console.log(name); // kim

name = 'park'; // 재할당 시 Error 발생!
console.log(name); // Uncaught TypeError: Assignment to constant variable

const name = 'lee'; // 중복 선언 시 Error 발생!
console.log(name); // SyntaxError: Identifier 'name' has already been declared

const는 재할당도, 중복 선언도 할 수 없다. 값을 한 번 지정하면 바꾸지 못한다!

 

04. var vs let vs const

  var let const
값 재할당 O O X
중복 선언 O X X