JavaScript 변수와 데이터 타입
저번 블로그에서는 “자바스크립트란 무엇인가?”, “이런게 있구나!” 라는것을 알아보았고, 앞으로 자바스크립트에 대해서 중점적으로 기술블로그를 써보려 합니다.
자바스크립트를 배우는 가장 첫걸음은 변수와 데이터 타입을 이해하는 것입니다.
변수는 데이터를 저장하는 그릇, 데이터 타입은 그 안에 담을 수 있는 내용물의 종류라고 생각하면 됩니다.
1. 변수란?
변수(Variable)는 프로그램에서 데이터를 저장하고 재사용하기 위해 이름을 붙인 공간입니다.
1-1. 변수 선언 방법
var name = "Hae-na"; // ES5까지 사용
let age = 1; // 값 변경 가능
const birthYear = 2025; // 값 변경 불가
-
var: 함수 스코프, 중복 선언 가능 → 안쓰는걸 추천(중복 선언이 가능하기 때문에 어디서 선언이 됐는지 알 수 없음) -
let: 블록 스코프, 값 재할당 가능 -
const: 블록 스코프, 값 재할당 불가
1-2. 변수 이름 규칙
-
영문자, 숫자, _, $ 사용 가능
-
숫자로 시작 불가
-
예약어(for, if 등)는 사용 불가
-
관례적으로 camelCase 사용 (예: userName, birthDate)
2. 데이터 타입
자바스크립트는 동적 타입 언어입니다. 즉, 변수를 선언할 때 타입을 명시하지 않고, 값이 할당될 때 자동으로 타입이 결정됩니다.
2-1. 원시 타입 (Primitive Types)
- 문자열 (String)
let str = "Hello JS";
let str2 = "Single quotes";
let str3 = `Template ${str}`;
- 숫자 (Number)
let num = 10;
let pi = 3.14;
- 불리언 (Boolean)
let isLoggedIn = true;
let hasError = false;
- undefined (값이 할당되지 않은 상태)
let x;
console.log(x); // undefined
- null (의도적으로 “값 없음”)
let y = null;
- 심볼 (Symbol, ES6+)
let id = Symbol("id");
- BigInt (큰 정수 표현)
let big = 1234567890123456789012345678901234567890n;
2-2. 참조 타입 (Reference Types)
- 객체 (Object)
let person = {
name: "Hae-na",
age: 1,
};
- 배열 (Array)
let fruits = ["apple", "banana", "cherry"];
- 함수 (Function)
function greet(name) {
return `Hello, ${name}`;
}
3. typeof 연산자
변수의 타입을 확인할 때type of를 사용합니다.
console.log(typeof "hello"); // string
console.log(typeof 123); // number
console.log(typeof true); // boolean
console.log(typeof undefined); // undefined
console.log(typeof null); // object (자바스크립트의 오래된 버그)
console.log(typeof {}); // object
console.log(typeof []); // object (배열도 객체)
console.log(typeof function(){}); // function
4.Oneul Code를 정리하며…
오늘은 자바스크립트의 기초 중에서도 가장 중요한 변수와 데이터 타입을 공부했습니다.
-
변수 선언: var, let, const
-
데이터 타입: 원시 타입(문자열, 숫자, 불리언, null, undefined, Symbol, BigInt)과 참조 타입(객체, 배열, 함수)
-
타입 확인: typeof 연산자
자바스크립트는 동적 타입 언어라서 유연하게 변수를 다룰 수 있지만, 그만큼 예상치 못한 에러가 발생하기도 합니다.
따라서 변수를 선언할 때는 const와 let을 기본으로 사용하고, 데이터 타입을 잘 구분하는 습관이 중요합니다.
Oneul Code는 오늘 배운 내용을 기록하며, 여러분도 직접 브라우저 콘솔에서 변수를 선언하고 타입을 확인해보기를 추천합니다.