
: 자바스크립트의 변수 선언은 다른 언어처럼 타입에 따라 달리 선언하지 않는다. (var 하나로 선언이 가능하다.)
다만 ES6 이후 재사용 여부에 따라 달리 선언하고자 let과 const가 등장했다.
let과 const의 차이점은 reassigned(재할당)의 여부이다.
결과부터 얘기하자면 const를 기본으로 사용하고 재할당이 필요할 경우에만 let을 사용하도록 한다.
var name = 'ash'
console.log(name) // output: ash
var name = 'gyon'
console.log(name) // output: gyon
var은 변수의 재할당, 재선언이 모두 가능하다. let name = 'ash'
console.log(name) // output: ash
let name = 'gyon'
console.log(name)
// output: Uncaught SyntaxError: Identifier 'name' has already been declared
name = 'velog'
console.log(name) // output: velog
let은 위와 같이 재할당은 가능하다. 재선언은 불가능하다. const name = 'ash'
console.log(name) // output : ash
const name = 'gyon'
console.log(name)
// output : Uncaught SyntaxError: Identifier 'name' has already been declared
name = 'react'
console.log(name)
// output : Uncaught TypeError: Assignment to constant variable.
const는 위와 같이 재할당, 재선언이 모두 불가능하다.