728x90
728x90

변수 선언

프로그래밍 언어에서 변수를 사용하기 위해서는 해당 변수를 선언해야 한다. JavaScript에서는 변수를 선언할 때 let, const, var 등의 키워드를 사용한다.

var

과거부터 사용되어 왔던 변수 선언 키워드로, var로 선언된 변수는 함수 단위의 스코프를 가지며, 해당 함수 내에서만 유효하다. var로 선언된 변수는 중복 선언이 가능하며, 재할당도 가능하다.

var x = 1;
if (true) {
  var x = 2;
  console.log(x); // 2
}
console.log(x); // 2

위 코드에서는 if문 내에서 var로 선언된 x 변수가 전역 변수를 덮어씌우기 때문에, 전역에서의 x값도 2가 된다.

let

ES6에서 도입된 블록 스코프를 가지는 변수 선언 키워드로, let으로 선언된 변수는 중복 선언이 불가능하며, 재할당은 가능하다.

let x = 1;
if (true) {
  let x = 2;
  console.log(x); // 2
}
console.log(x); // 1

위 코드에서는 if문 내에서 let으로 선언된 x 변수가 전역 변수와는 다른 스코프를 가지기 때문에, 전역에서의 x값은 변하지 않는다.

const

let과 유사하지만, 상수를 선언할 때 사용한다. const로 선언된 변수는 재할당이 불가능하다.

const pi = 3.141592;
pi = 3; // TypeError: Assignment to constant variable.

위 코드에서는 pi 변수에 값을 재할당하려고 하면 TypeError가 발생한다.

결론

JavaScript에서 변수를 선언할 때는 let과 const를 사용하는 것이 권장된다. var는 함수 스코프를 가지기 때문에 의도하지 않은 변수 덮어씌움이 발생할 수 있다. 또한, const를 사용하여 상수를 선언하면 값이 변하지 않는 변수를 사용할 수 있다.

728x90
300x250

+ Recent posts