[JS] var, let, const
2023. 6. 26. 21:00ㆍLanguages/Javascript
💬 기억하고 싶거나 공부한 내용을 기록중입니다 :) 개인적으로 기억하고 싶은 내용들을 적어두고 있습니다.
var, let, const
1. 호이스팅(hoisting)
- 자바스크립트에서, 변수가 선언되기 전에 사용되는 경우가 있다. 이런 경우 let이나 const이라는 타입인 경우 사용할 수 없지만, var 형태인 경우 undefined라고 개발자 도구에서 확인할 수 있다. var로 선언된 변수는 초기값이 없는 경우, undefined로 변수를 초기화하는 것이다.
2. 재선언
- let 또는 const는 동일한 변수로 재선언할 수 없다. 하지만 var은 재선언이 가능하다는 점이 다르다.
<script>
console.log(a); // undefined (개발자 도구에서 확인)
console.log(b); // Uncaught ReferenceError: Cannot access 'b' before initialization
var a = 10;
let b = 20;
var a = 20;
console.log(a); // 20 출력
</script>
3. 값의 재할당 가능?
- var, let은 값이 재할당이 가능하지만, const는 재할당이 되지 않는다.
<script>
var a = 10;
let b = 20;
const c = 30;
a = 20;
b = 30;
c = 40;
console.log(a); // 20 출력
console.log(b); // 30 출력
console.log(c); // Uncaught TypeError: Assignment to constant variable.
</script>
- 출처
1. https://www.w3schools.com/js/js_variables.asp