1. var
var name = 'hello'
console.log(name) // hello
var name = 'good night'
console.log(name) // good night
var는 변수를 선언한 후에 다시한번 var로 선언해도 에러가 나오지 않고 각기 다른 값이 출력된다.
이를 보완하기위해 추가된 변수 선언방식이 아래의 let 과 const이다.
let과 const의 공통점은 위에서 이미 변수가 선언되었을 경우 아래서 변수 재 선언이 되지 않는다.(아래의 에러메시지 출력됨)
//Uncaught SyntaxError: Identifier '******' has already been declared
차이점(immutable여부)은 아래와 같다.
2. let
let은 변수 재할당이 가능하다.
let name = 'Hello'
console.log(name) // Hello
let name = 'javascript'
console.log(name)
// Uncaught SyntaxError: Identifier 'name' has already been declared
name = 'good night'
console.log(name) //good night
3. const
const는 변수 재할당, 재선언 모두 불가능하다.
const name = 'Hello'
console.log(name) // Hello
const name = 'javascript'
console.log(name)
// Uncaught SyntaxError: Identifier 'name' has already been declared
name = 'good night'
console.log(name)
//Uncaught TypeError: Assignment to constant variable.
4. 결론
변수 선언에는 기본적으로 const를 사용하고, 재할당이 필요한 경우에만 let을 사용한다.
객체를 재할당하는 경우는 거의 없으니까 const를 사용할 경우 재할당을 방지해준다.
'Front-end > JavaScript Language' 카테고리의 다른 글
yarn.lock & package-lock.json (0) | 2022.04.09 |
---|---|
Console.log() (0) | 2022.02.19 |
여러 함수(Filter, Splice, FindIndex, Find...) (0) | 2021.10.17 |
LocalStorage, SessionStorage, Cookie -Jwt (0) | 2021.08.28 |
location.href vs. location.replace() (0) | 2021.06.02 |