작성하게 된 계기
javascript를 공부하다가 의문이 생겼다.
공부하다보면 변수 선언에 var, let, const 쓰는데 뭐가 기준인지 잘 모르겠다.
궁금증이 들어서 내 코드에 변수선언을 바꿔서 넣어보기 시작했고, 출력값 변화가 없었음.
기준을 알고 싶었고 따로 정리를 해놔야겠다고 생각했다.
https://velog.io/@bathingape/JavaScript-var-let-const-차이점 참고,인용 하였습니다.
지금은 딱 두가지만 알아보자.
1. var, let, const 의 차이점
2. 경우에 따라 사용해야 하는 변수선언
1. var, let, const의 차이점
1) var
변수 재선언 시도
var name = 'bathingape'
console.log(name) // bathingape
var name = 'javascript'
console.log(name) // javascript
>> 변수를 한 번 더 선언했음에도 불구하고, 에러가 나오지 않고 각기 다른 값이 출력된다.
이는 유연한 변수 선언으로 간단한 테스트에는 편리함.
코드량이 많아 진다면 어디에서 어떻게 사용 될지도 파악하기 힘들뿐더러 값이 바뀔 우려 있음.
2) let
변수 재선언 시도
let name = 'bathingape'
console.log(name)
let name = 'javascript'
console.log(name)
// Uncaught SyntaxError: Identifier 'name' has already been declared
>> name이 이미 선언 되었다는 에러 메세지가 나온다. 변수 재선언 불가능
변수 재할당 시도
let name = 'bathingape'
console.log(name) // bathingape
name = 'react'
console.log(name) //react
>> let 은 변수에 재할당 가능
let과 const의 차이점은 뭘까?
3) const
const 변수 재선언 시도
const name = 'bathingape'
console.log(name)
const name = 'javascript'
console.log(name)
// Uncaught SyntaxError: Identifier 'name' has already been declared
>> 여기까진 위에 말했던 것과 같다. 변수 재선언 불가능
const 변수 재할당 시도
const name = 'bathingape'
console.log(name)
name = 'react'
console.log(name)
//Uncaught TypeError: Assignment to constant variable.
>> const는 변수 재선언, 재할당 모두 불가능
2. 경우에 따라 사용해야 하는 변수선언
그렇다면, 경우에 따라 어떤 변수 선언 방식을 써야할까?
const : 기본 사용 !
let : 재할당이 필요한 경우에 한정해 사용
var : 테스트, 간단한 코딩에 사용
객체를 재할당하는 경우는 생각보다 흔하지 않다.
const 를 사용하면 의도치 않은 재할당을 방지해 주기 때문에 보다 안전하다.
'nodejs' 카테고리의 다른 글
JWT 이해 (0) | 2021.11.23 |
---|---|
package.json 이해 _node.js (0) | 2021.11.22 |
javascript 입문 (0) | 2021.11.09 |
완전 초보자 GIT에 대한 이해 (작성 중) (0) | 2021.11.07 |
몽고DB AWS EC2 설정 - 배포까지 (0) | 2021.11.04 |