Ch.9 JavaScript 기초 — 페이지에 생명을

DOM 조작 — 페이지 제어하기

document.querySelector로 HTML 요소를 선택할 수 있다textContent, style, classList를 사용해 요소를 변경할 수 있다createElement와 appendChild로 새 요소를 동적 생성할 수 있다

JavaScript로 HTML을 마음대로 바꿀 수 있다면?

페이지에 있는 텍스트를 바꾸고, 스타일을 변경하고, 새 요소를 추가하는 것 — 이것이 바로 DOM 조작입니다.

JavaScript가 HTML 요소에 접근하는 방법은?

DOM(Document Object Model) — HTML을 JavaScript가 이해하는 객체 트리로 변환한 것입니다.


article

핵심 내용

querySelector로 요소를 선택하고 속성을 변경합니다

// 요소 선택 — CSS 셀렉터와 동일!
const title = document.querySelector("h1");
const btn = document.querySelector("#myBtn");
const cards = document.querySelectorAll(".card");

// 텍스트 변경
title.textContent = "새 제목!";

// 스타일 변경
title.style.color = "#4ECDC4";
title.style.fontSize = "2rem";

// 클래스 추가/제거/토글
btn.classList.add("active");
btn.classList.remove("hidden");
btn.classList.toggle("dark");

JavaScript로 새 HTML 요소를 만들어 페이지에 추가합니다

// 1. 새 요소 생성
const newCard = document.createElement("div");

// 2. 내용과 스타일 설정
newCard.textContent = "새로 추가된 카드!";
newCard.classList.add("card");
newCard.style.background = "#E8FAF7";

// 3. 페이지에 추가
const container = document.querySelector("#list");
container.appendChild(newCard);

// 또는 innerHTML로 한번에 (주의: 보안 위험)
container.innerHTML += '<div class="card">HTML 직접 삽입</div>';

createElement: 새 요소 객체 생성

속성 설정: 텍스트, 클래스, 스타일 지정

appendChild: 부모 요소에 자식으로 추가

innerHTML vs appendChild innerHTML: HTML 문자열로 한번에 삽입 (간편하지만 XSS 위험) appendChild: 요소 객체를 안전하게 추가 (권장)

DOM 조작으로 간단한 할 일 목록을 만들어봅시다

CSS 클래스를 추가하거나 제거할 때 사용하는 속성은?

JavaScript에서 새 HTML 요소를 만드는 메서드는 document.___("div") 이다

querySelectorAll()은 하나의 요소만 반환한다

JavaScript 기초 완전 정복!

key

핵심 용어

🎯

querySelector()

CSS 셀렉터로 첫 번째 요소 선택

📝

textContent

요소의 텍스트 읽기/변경

🎨

style

인라인 스타일 직접 변경

🏷️

classList

CSS 클래스 추가/제거/토글

edit_note

정리 노트

DOM 조작 — 페이지 제어하기

요소 선택

querySelector()
CSS 셀렉터로 첫 번째 일치 요소 선택
querySelectorAll()
CSS 셀렉터로 모든 일치 요소를 NodeList로 반환
getElementById()
id 속성으로 단일 요소 선택

요소 변경·생성

textContent
요소의 텍스트 내용을 읽거나 변경
innerHTML
요소 내부의 HTML 코드를 읽거나 변경
createElement()
새 HTML 요소를 메모리에 생성
appendChild()
생성한 요소를 부모 요소에 추가

DOM은 HTML을 JavaScript 객체로 다루는 인터페이스입니다.

image

시각 자료

check_circle

핵심 정리

  • 1querySelector = CSS 셀렉터로 요소 선택
  • 2textContent, style, classList로 요소 변경
  • 3createElement + appendChild로 동적 요소 생성

퀴즈와 인터랙션으로 더 깊이 학습하세요

play_circle인터랙티브 레슨 시작