내가 java script를 공부하면서 궁금한 점을 올리겠습니다!
JavaScript에서 변수 선언 방식인 var, let, const의 차이점에 대해 알아보자!
1.변수 선언 방식
우선, var 변수를 선언해 보자
var car = 'Ferari'
console.log(car) //Ferari
var car = 'Bugati'
console.log(car) // Bugati
같은 이름의 변수를 선언했음에도, 에러가 나오지 않고 다른 값이 출력된다.
이게 뭐가 문제야?라고 생각할 수도 있다. 나도 그랬다. 오히려 더 좋다고 생각했다.
하지만 코드량이 많아지고 사용하는 변수가 많아진다고 생각하면,
저 위에서 사용한 var car 를 저 아래에서 다시 선언하게 된다면,, 끔찍하다...
이런 문제를 보완하기 위해서 사용된 방식이 let 과 const다.
코드를 작성해 보면,
let car = 'Ferari'
console.log(car) //Ferari
let car = 'Bugati'
console.log(car) // Uncaught SyntaxError : Identifier 'name' has already been declared
car가 이미 선언된 변수라고 에러메세지가 나온다. 한 마디로 let 이나 const는 변수 재선언이 되지 않는다.
그렇다면 왜 let, const 두개를 만들어 놓은것일까?
두 개의 차이점은 immutable 여부이다. 불변이란 뜻이다.
// let은 변수에 재할당이 가능하다.
let car = 'Ferari'
console.log(car) //Ferari
let car = 'Bugati'
console.log(car) // 위에서 본것처럼 오류가 뜬다.
car = "RollsRoyce"
console.log(car) // RollsRoyce가 출력된다.
//const 는 변수 재선언, 변수 재할당 모두 불가능하다.
const car = 'Ferari'
console.log(car) // Ferari
const car = 'Bugati'
console.log(car)
// 위에서 본것처럼 오류가 뜬다.
car = 'RollsRoyce'
console.log(car)
//Uncaught TypeError: Assignment to constant variable.
const는 오류가 떠버린다.
정리
var , let, const 세가지의 변수 선언에 대해서 알아보았다. 평상시에 코딩할 때 var를 많이 썻는데
youtube강의를 듣다보니 많은 선생님들이 var보다는 let이나 const를 많이 사용하셨다.
let은 한번 선언한 변수가 있다면 다음에 선언할 때 고민하지 않아도 되니 좋은거 같다.
const는 그 변수에 무결성을 잘 지켜줄 수 있을것 같다.
필요에 따라서 잘 사용하고 var는 지양하도록 해야겠다.
'Java Script > Vanila JavaScript' 카테고리의 다른 글
[JS] 글자 수에 따른 byte수 체크하기 (0) | 2023.03.02 |
---|---|
JS. querySelectorAll에 대해 알아보자 (답은 이름에 있다.) (0) | 2021.09.12 |
JS 가장 많이 사용하는 함수! console.log 와 alert! (0) | 2021.09.12 |
Vanila Js 태그를 선택하는 함수 querySelector! (0) | 2021.09.12 |
Java Script 30 (0) | 2021.09.12 |