var
와 let
은 변수, const
가 상수인것은 알지만 정확히 어떤 차이점을 가지는지 몰라서 기록해둠.
호이스팅과 스코프에 대한 개념도 알아두는게 좋지만, 우선은 값을 선언하고 할당하는 부분의 차이점만을 기록함.
호이스팅, 스코프에 대한 공부는 추후 추가할 것.
변수는 기본적으로 선언
> 초기화
> 할당
의 과정을 거쳐 사용된다.
선언
이란 javascript에 해당 변수를 사용하겠다고 선언하는 과정.
초기화
란 메모리의 공간을 확보하는 과정.
선언
과 초기화
를 묶어 선언
이라고 부르기도 한다.
var
는 변수
의 재선언
이 가능하다.
유연성이 있는 코드이나, 이미 있는 변수인지 모르고 재선언 할 경우 값이 변경되는 문제가 발생할 수 있음.
var kuj="0829kuj";
console.log(kuj); // 결과: '0829kuj'
var kuj="0000kuj";
console.log(kuj); // 결과: '0000kuj'
위의 예시코드가 에러없이 동작한다.
ES6에서 추가된 let
은 var와 달리 변수
의 재선언
이 불가능하다.
단, 이미 선언된 변수의 값을 재할당
하는것은 가능.
실수로 이미 있는 변수를 재선언하는 것을 방지할 수 있다.
let kuj = "0829kuj";
console.log(kuj); // 결과: '0829kuj'
kuj = "0000kuj";
console.log(kuj); // 결과: '0000kuj'
let kuj = "0829kuj"; // 에러발생
const
는 var
, let
과 달리 재선언과 재할당이 모두 불가능하므로, 최초에 선언한 값을 그대로 사용할때 쓰는 상수
키워드로 이해하면 된다.
const kuj="0829kuj";
console.log(kuj); // 결과: '0829kuj'
const kuj="1111kuj"; // 에러발생
자바스크립트 변수 var, let, const 차이
var, let, const 차이점
var, let, const의 차이 ⏤ 변수 선언 및 할당, 호이스팅, 스코프