let, const, var

Yeeeeeun_IT·2022년 8월 26일
0

JavaScript에서 변수 선언 방식은 크게 var, let, const 세가지로 나뉜다.

세가지 방식의 차이점과 문제점을 확인해보자.

var

var는 변수 선언에 있어서 큰 단점을 가지고 있다.
먼저 선언한 변수가 있어도 다시 동일한 변수명으로 변수를 선언할수 있다.
이렇게 되면 이전에 선언한 변수는 사라지게되어 개발에 있어 큰 오류를 낳을 수 있다.
수백 수천줄의 코드가 쌓이면 이미 선언된 변수명을 일일이 기억하기 매우 어려울 것이다.
이에따라 ES6에서 이를 보완하기 위해 나온 변수 선언 방식이 let 과 const 이다.
더이상 var는 사용하지 말자.

let

let 은 변수에 재할당이 가능하다.
let 으로 선언된 변수는 선언 단계와 초기화 단계가 분리되어 진행된다.

const

const는 변수 재선언, 변수 재할당 모두 불가능하다.
const는 선언과 동시에 할당을 해야한다!
const 키워드로 선언된 변수에 객체를 할당한 경우 재할당은 금지하지만 값을 변경할 수 있다.
변수 선언에는 기본적으로 const를 사용하고 let은 재할당이 필요한 경우에 한정해 사용하는 것이 좋다.
안전한 코딩을 위해 const를 사용하자!

호이스팅(Hoisting)이란, 선언문을 가장 먼저 실행하는 자바스크립트의 특성을 말한다.
자바스크립트는 ES6에서 도입된 let, const를 포함하여 모든 선언(var, let, const, function 등)에 대해 호이스팅한다.

변수는 선언 단계 > 초기화 단계 > 할당 단계 로 진행된다.
let 으로 선언된 변수를 선언문 이전에 참조하면 var와 달리 참조 에러(ReferenceError)가 발생한다. 이는 let 으로 선언된 변수는 스코프의 시작에서 변수의 선언까지 일시적 사각지대(TDZ : Temporal Dead Zone)에 빠지기 때문이다.

profile
🍎 The journey is the reward.

0개의 댓글

관련 채용 정보