| 구분 | 설명 |
|---|---|
| 🧮 정수 | 소수점이 없는 숫자 |
| 📏 실수 | 소수점이 있는 숫자 (⚠️ 정밀 계산 불가 → 별도 함수 필요) |
console.log(100);
console.log(typeof 100); // number
console.log(0.1 + 0.2);

"" 또는 ''로 묶은 데이터
console.log(typeof "100"); // string
console.log(typeof "안녕하세요"); // string

| 코드 | 기능 | 예시 |
|---|---|---|
\ | 백슬래시 출력 | console.log("\안녕1") |
' | 작은따옴표 출력 | console.log('\안녕2') |
" | 큰따옴표 출력 | console.log("\"안녕3") |
\n | 줄바꿈 | console.log("\n안녕4") |
\t | 들여쓰기 | console.log("\t안녕5") |

문자열과 변수를 함께 표현할 수 있는 백틱(`) 문법
let name = 'Kim';
let classRoom = 204;
// 과거 방식
console.log(name + "님, " + classRoom + "호 강의실로 입장하세요.");
// 템플릿 리터럴 방식
console.log(`${name}님, ${classRoom}호 강의실로 입장하세요.`);

console.log(true);
console.log(false);
console.log(typeof true);
console.log(typeof false);

| 상태 | 설명 |
|---|---|
undefined | 변수를 선언했지만 값을 할당하지 않은 상태 |
null | 변수가 존재하지만 유효하지 않거나 비어있는 상태 |
let 과일상자;
console.log(과일상자); // undefined
let 채소상자 = null;
console.log(채소상자); // null

| 특징 | 설명 |
|---|---|
| 🧩 | 여러 값을 하나의 변수에 저장 |
| 🔢 | 인덱스는 0부터 시작 |
| 🧱 | 배열 안에 배열 가능 ([ [ ] ]) |
let season = ["봄", "여름", "가을", "겨울"];
console.log(season[0]); // 봄

| 함수 | 설명 |
|---|---|
Number("문자열") | 숫자형으로 변환 |
parseInt("문자열") | 정수로 변환 (소수점 이하 제거) |
parseFloat("문자열") | 실수로 변환 |
String(숫자) | 문자열로 변환 |

| 종류 | 예시 | 설명 |
|---|---|---|
| ➗ 산술 | + - * / % | 계산 수행 |
| 🔗 연결 | "문자" + 10 → "문자10" | 문자열 결합 |
| ⚖️ 비교 | > < >= <= == === != !== | true / false 반환 |
| 🧠 논리 | `&& | |
| 📦 할당 | = += -= *= /= %= | 변수에 값 저장 |
| 🔼 증감 | ++ -- | 1씩 증가 / 감소 |
| 🎯 삼항 | 조건 ? 참 : 거짓 | 조건에 따른 값 반환 |
let korean = Number(prompt("국어 점수"));
let math = Number(prompt("수학 점수"));
let total = korean + math;
console.log(`총 합계 : ${total}`);

let name = prompt("이름 입력");
let age = Number(prompt("나이 입력"));
document.write(`<h3>${name}(${age})</h3>`);

let score1 = Number(prompt("1차 점수"));
let score2 = Number(prompt("2차 점수"));
let result = score1 + score2 >= 150 ? "합격" : "불합격";
document.write(`<h3>${result}</h3>`);
