JavaScript 변수와 데이터 타입
이 토픽을 마치면
let과 const로 변수를 선언할 수 있고, JavaScript의 기본 데이터 타입 6가지를 구분할 수 있습니다.
변수란
변수는 값을 담아두는 이름표입니다. 한 번 담아둔 값을 나중에 다시 꺼내 쓸 수 있습니다.
javascript
let userName = "김개발";
let age = 28;
console.log(userName); // "김개발"
console.log(age); // 28
// let으로 선언한 변수는 값을 바꿀 수 있습니다
age = 29;
console.log(age); // 29JavaScript에서 변수를 선언하는 키워드는 세 가지입니다:
javascript
let count = 0; // 값이 바뀔 수 있는 변수
const PI = 3.14; // 값이 바뀌지 않는 상수
var old = "옛날"; // 과거 방식 — 지금은 쓰지 않습니다let과 const만 기억하면 됩니다. var는 스코프(변수가 유효한 범위) 문제가 있어서 현대 JavaScript에서는 사용하지 않습니다. 바꿀 필요가 없는 값이면 const, 바꿔야 하면 let을 쓰세요.
데이터 타입 6가지
JavaScript의 값에는 타입이 있습니다. 숫자와 문자는 다르게 취급됩니다.
javascript
// 1. 문자열 (string) — 따옴표로 감싼 텍스트
const name = "홍길동";
const greeting = '안녕하세요';
// 2. 숫자 (number) — 정수와 소수 구분 없음
const score = 95;
const ratio = 0.85;
// 3. 불리언 (boolean) — true 또는 false
const isLoggedIn = true;
const hasError = false;
// 4. null — "값이 비어있음"을 의도적으로 표현
const selected = null;
// 5. undefined — 값이 아직 할당되지 않은 상태
let result;
console.log(result); // undefined
// 6. 객체 (object) — 여러 값을 묶어서 저장
const user = {
name: "김개발",
age: 28,
active: true
};
console.log(user.name); // "김개발"typeof로 타입 확인
값의 타입이 뭔지 모를 때 typeof를 쓰면 됩니다. AI가 만든 코드에서 타입이 예상과 다를 때 디버깅에 유용합니다.
javascript
console.log(typeof "hello"); // "string"
console.log(typeof 42); // "number"
console.log(typeof true); // "boolean"
console.log(typeof undefined); // "undefined"
console.log(typeof null); // "object" ← JavaScript의 유명한 버그
// 숫자 + 문자열 = 문자열로 합쳐짐 (주의!)
console.log(10 + "5"); // "105" (숫자 15가 아님!)
console.log(10 - "5"); // 5 (빼기는 숫자로 변환됨)typeof null이 "object"를 반환하는 것은 JavaScript 초창기부터 존재하는 버그입니다. 지금까지 고쳐지지 않았습니다. 그리고 10 + "5"가 "105"가 되는 것 — 이 타입 강제 변환은 JavaScript에서 가장 흔한 실수 원인 중 하나입니다.
→ 바이오에 적용: DevBench — Python 기초