JavaScript는 웹 개발에서 가장 많이 사용되는 언어로, 프로그램의 데이터를 저장하고 처리하기 위해 변수를 사용합니다. 변수는 프로그래머가 데이터를 효율적으로 관리할 수 있도록 돕는 중요한 개념입니다. 이 글에서는 JavaScript의 변수에 대한 기초 개념과 선언 방법, 특징을 정리해보겠습니다.
변수란 무엇인가?
변수는 데이터를 저장하기 위한 메모리 공간의 이름입니다. 변수를 통해 값을 저장하거나 변경할 수 있습니다. 변수 이름을 사용하면 해당 변수에 저장된 값을 쉽게 참조하거나 수정할 수 있습니다.
변수 선언 키워드
JavaScript에서는 변수를 선언할 때 var, let, const 세 가지 키워드를 사용할 수 있습니다.
1. var
var x = 10;
console.log(x);
- ES6 이전에 사용되던 변수 선언 방식입니다.
- 함수 스코프(function scope)를 가지며, 블록 스코프(block scope)를 지원하지 않습니다.
- 같은 이름의 변수를 중복 선언할 수 있습니다.
2. let
let y = 20;
y = 30;
console.log(y);
- ES6에서 도입된 변수 선언 방식입니다.
- 블록 스코프(block scope)를 가집니다.
- 중복 선언이 불가능합니다.
3. const
const z = 50;
console.log(z);
- 상수를 선언할 때 사용합니다.
- 블록 스코프(block scope)를 가지며, 선언과 동시에 초기화해야 합니다.
- 값을 재할당 할 수 없습니다.
스코프(Scope)란?
스코프는 변수의 유효 범위를 의미합니다.
JavaScript의 스코프는 크게 전역 스코프와 지역 스코프로 나뉩니다.
- 전역 스코프(Global Scope) : 코드 어디에서나 접근 할 수 있는 변수
- 지역 스코프(Local Scope) : 함수 또는 블록 내에서만 접근할 수 있는 변수
변수의 호이스팅 (Hoisting)
JavaScript에서 변수 선언은 코드의 최상단으로 끌어올려지는 현상이 발생하는데, 이를 호이스팅이라고 합니다. var는 선언과 초기화가 함께 호이스팅 되지만, let과 const는 선언만 호이스팅되며 초기화는 해당 위치에 남습니다.
console.log(a);
// return undefined
var a = 5;
console.log(b);
// return ReferenceError
let b = 10;
변수 선언 시 주의할 점
- var를 사용해도 소스가 정상 동작하지만, let과 const를 사용하는 것이 권장됩니다.
(var의 경우 중복 선언이 되어도 오류로 감지되지 않기 때문에 개발 단계에서의 잦은 버그를 발생시킬 수 있습니다.) - 전역변수를 남용하면 메모리 누수 및 충돌 문제가 발생할 수 있으므로, 지역 변수 사용을 선호합니다.
- const를 사용하여 상수를 선언할 때는 객체나 배열의 내부 값은 변경할 수 있다는 점을 주의해야 합니다.
const arr = [1, 2, 3];
arr.push(4);
console.log(arr);
// [1, 2, 3, 4]
JavaScript의 변수는 데이터를 효율적으로 관리하는 데 필수적인 개념입니다. var, let, const의 차이점을 이해하고 상황에 맞게 사용하는 것이 중요합니다. 특히 최신 JavaScript 코드에서는 블록 스코프를 지원하는 let과 const를 사용해 코드를 더 안전하게 작성하는 것이 권장됩니다. 이러한 변수 선언 방식을 통해 더욱 견고하고 유지보수하기 쉬운 프로그램을 작성할 수 있습니다.
'개발 지식 한스푼' 카테고리의 다른 글
JavaScript _ 바닐라 JS란? (0) | 2025.01.15 |
---|---|
JavaScript _ list 와 array (0) | 2025.01.12 |
JavaScript _ NaN (Not a Number) (0) | 2025.01.11 |
JavaScript _ 데이터 타입 number, string, boolean (0) | 2025.01.10 |
JavaScript _ null 과 undefined (0) | 2025.01.09 |