JavaScript에서 변수란? var, let, const 차이점과 사용법
자바스크립트에서 변수는 데이터를 저장하고 관리하는 기본적인 방법입니다. 변수는 코드의 가독성을 높이고, 반복되는 값을 재사용할 수 있게 해줍니다. 이 글에서는 자바스크립트의 세 가지 주요 변수 선언 키워드인 var
, let
, const
의 차이점과 각 키워드의 올바른 사용법을 자세히 살펴보겠습니다.
목차
- 자바스크립트에서 변수란?
- var, let, const 개요
- var의 특성과 사용법
- let의 특성과 사용법
- const의 특성과 사용법
- 변수 선언 시 주의사항
- var, let, const의 비교와 사용 시점
자바스크립트에서 변수란?
변수는 프로그램 내에서 데이터를 저장하고, 이 데이터를 나중에 참조하거나 수정할 수 있는 이름을 가진 컨테이너입니다. 변수는 숫자, 문자열, 객체, 함수 등 다양한 타입의 데이터를 저장할 수 있으며, 코드가 실행되는 동안 변경 가능하거나 불변일 수 있습니다. 자바스크립트에서는 변수를 선언하기 위해 var
, let
, const
키워드를 사용합니다.
var, let, const 개요
자바스크립트에서는 변수를 선언하는 방법이 세 가지 있습니다:
var
: ES5 이전에 주로 사용되었으며, 함수 스코프를 가지며, 중복 선언이 가능합니다.let
: ES6(ECMAScript 2015)에서 도입된 키워드로, 블록 스코프를 가지며, 중복 선언이 허용되지 않습니다.const
:let
과 유사하지만, 선언과 동시에 초기화가 필요하며, 값이 변경되지 않는 상수를 선언할 때 사용됩니다.
var의 특성과 사용법
var
는 자바스크립트의 초기 버전부터 존재해온 변수 선언 방식입니다. var
로 선언된 변수는 함수 스코프를 가지며, 함수 내에서 선언된 변수는 함수 외부에서 접근할 수 없습니다. 또한, var
로 선언된 변수는 호이스팅(Hoisting)이라는 특성을 가지는데, 이는 변수가 선언되기 전에 사용할 수 있는 특성을 말합니다.
console.log(x); // undefined
var x = 5;
위 코드에서 x
는 선언 이전에 접근할 수 있지만, 값은 할당되지 않아 undefined
를 반환합니다.
let의 특성과 사용법
let
은 블록 스코프를 가지는 변수 선언 키워드로, 동일한 블록 내에서 중복 선언이 허용되지 않습니다. let
을 사용하면 변수의 스코프를 더 명확하게 정의할 수 있어 코드의 가독성과 유지 보수성이 향상됩니다. let
은 호이스팅되지만, 선언 전에 접근하면 ReferenceError가 발생합니다.
let y = 10;
if (true) {
let y = 20;
console.log(y); // 20
}
console.log(y); // 10
위 코드에서 y
는 서로 다른 블록 내에서 다른 값으로 존재합니다. 이처럼 let
은 블록 레벨에서 변수의 범위를 제한합니다.
const의 특성과 사용법
const
는 상수를 선언할 때 사용되며, 선언과 동시에 초기화가 필요합니다. const
로 선언된 변수는 재할당이 불가능하며, 값이 변경되지 않는다는 특징이 있습니다. 단, const
가 객체나 배열을 가리킬 때는 객체의 속성이나 배열의 요소는 변경할 수 있습니다.
const z = 30;
z = 40; // TypeError: Assignment to constant variable.
위 예제에서 z
는 const
로 선언되었기 때문에, 값을 재할당하려고 하면 에러가 발생합니다.
변수 선언 시 주의사항
변수 선언 시에는 스코프와 호이스팅을 고려해야 합니다. var
는 의도하지 않은 변수 사용을 초래할 수 있으므로, 가능하면 let
이나 const
를 사용하는 것이 좋습니다. 또한, 불필요한 변수 선언을 피하고, 변수 이름은 의미 있게 지어 코드를 명확하게 해야 합니다.
var, let, const의 비교와 사용 시점
var
, let
, const
는 각각의 용도에 따라 선택적으로 사용해야 합니다:
var
: 함수 스코프가 필요하거나 호환성을 위해 필요한 경우에만 사용합니다.let
: 블록 스코프가 필요하고, 값이 변경될 수 있는 변수를 선언할 때 사용합니다.const
: 변하지 않는 상수 값을 선언할 때 사용하며, 가능한 모든 변수를const
로 선언하는 것이 좋습니다.
이제 각 변수 선언 키워드의 차이점과 특성을 이해하고, 상황에 맞게 올바른 선택을 통해 더 안전하고 유지 보수하기 쉬운 자바스크립트 코드를 작성할 수 있을 것입니다.
'프로그래밍 언어 > 자바스크립트' 카테고리의 다른 글
JavaScript 데이터 타입, 기본 타입부터 객체 타입까지 (0) | 2024.09.10 |
---|---|
JavaScript의 const와 상수 개념, 불변 데이터 구조 만들기 (0) | 2024.09.09 |
자바스크립트(JavaScript) 개발 환경 구축하기 (0) | 2024.09.07 |
자바스크립트(JavaScript) 코드 스니펫(Code snippet) (0) | 2024.09.06 |
ECMAScript 개요, 자바스크립트 표준화 과정과 주요 기능 (0) | 2024.09.05 |