728x90

var

이전 자바스크립트의 변수 선언이 var로만 가능했었다.

var 변수 선언을 했을 경우 가장 큰 특징은 중복 선언이 가능하다.

var a =10;
console.log(a) // 결과값 10

var a = 20;
console.log(a) // 결과값 20

var a = 30;
console.log(a) // 결과값 30

중복 선언의 위험성 때문에 큰 단점으로 여겨진다.

이 문제를 보완하기 위해 let과 const가 추가되었다.

 

let

변수명을 중복으로 선언하면 아래와 같은 에러가 발생한다.

허나 값을 재할당 하는 것은 가능하다.

let a = 10;
console.log(a) // 결과값 10

let a = 20;
console.log(a) // 에러발생
// SyntaxError: Identifier 'a' has already been declared
// 중복 선언 불가 

a = 30;
consolel.log(a) // 결과값 30
// 값을 재할당 하는 것은 가능

 

const

변수명을 중복으로 선언하면 let과 같은 에러가 발생한다.

const는 값을 재할당 하는 것도 불가능하다.

처음 선언하면 다른 값을 넣을 수 없기에 보통 const는 상수를 선언하는 키워드로 사용한다.

const a = 10;
consolel.log(a) // 결과값 10

const a = 20;
console.log(a) // 에러 발생
// SyntaxError: Identifier 'a' has already been declared
// 중복 선언 불가

a = 30; // 에러 발생
// Assignment to constant variable.
// 값을 재할당 하는 것도 불가

 

값을 재할당 할 필요가 있을 경우 - let

값을 재할당 할 필요가 없을 경우 - const

728x90

+ Recent posts