Notice
Recent Posts
Recent Comments
Link
쯔이's Dev
DOM( Document Object Model)(1) 정의 본문
반응형
브라우저가 HTML, XML 문서를 객체로 표현한 구조를 말한다.
웹 페이지의 콘텐츠를 **트리 구조(Tree Structure)**로 표현하며, 이를 통해 JavaScript로 문서를 쉽게 조작하거나 탐색할 수 있다
1. DOM의 구성 요소
- DOM은 크게 세 가지 주요 구성 요소로 나뉩니다:
- 노드(Node):
- DOM 트리의 기본 단위. HTML 요소, 속성, 텍스트 등이 모두 노드로 표현됩니다.
- 요소(Element):
- 태그(<div>, <p> 등)로 구성된 노드.
- 속성(Attribute):
- 요소의 추가 정보를 나타내는 노드(예: id="header", class="box" 등).
- 텍스트(Text):
- 요소의 내용으로, 노드로 표현됩니다.
- 노드(Node):
DOM의 주요 개념
- HTML 문서 → DOM 트리로 변환
- 브라우저는 HTML 파일을 읽고 해석해서 DOM 트리라는 구조를 생성한다.
- DOM 트리는 HTML 문서의 각 요소, 속성, 텍스트 등을 노드(Node)로 나타내는 트리 구조이다.
.
<!DOCTYPE html>
<html>
<head>
<title>Example</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>This is a paragraph.</p>
</body>
</html>
html
├── head
│ └── title
│ └── "Example"
└── body
├── h1
│ └── "Hello, World!"
└── p
└── "This is a paragraph."
2. DOM은 프로그래밍 인터페이스
- DOM은 JavaScript 같은 프로그래밍 언어로 문서를 조작할 수 있도록 제공되는 인터페이스야.
- JavaScript로 DOM을 사용하면 HTML 요소를 추가, 삭제, 수정, 탐색할 수 있어.
DOM과 JavaScript의 관계
- HTML → DOM: 브라우저는 HTML을 DOM 트리로 변환.
- DOM → JavaScript: JavaScript는 DOM을 사용해서 HTML 문서를 읽고 변경.
DOM을 왜 배우는 걸까?
- 웹 페이지 동적 조작:
- HTML/CSS로 만든 정적인 웹 페이지를 JavaScript로 동적으로 변경하기 위해.
- 사용자 경험 개선:
- 클릭, 입력 같은 사용자 상호작용을 처리하고 반응하기 위해.
- 브라우저 API 이해:
- DOM은 브라우저와 JavaScript가 소통하는 중요한 다리 역할을 해.
결론
DOM은 HTML 문서를 트리 형태로 표현한 객체 모델이고, JavaScript를 사용해 DOM을 조작하면 웹 페이지를 동적으로 변경할 수 있어.
기타 유용한 DOM 관련 메서드
메서드설명
createElement() | 새로운 HTML 요소 생성 |
createTextNode() | 텍스트 노드 생성 |
appendChild() | 부모 요소의 마지막 자식으로 추가 |
insertBefore() | 특정 요소 앞에 새 요소 삽입 |
removeChild() | 특정 자식 요소 제거 |
replaceChild() | 특정 자식 요소를 새 요소로 교체 |
const ul = document.createElement('ul'); // 목록 생성
const li = document.createElement('li'); // 목록 항목 생성
li.textContent = "새 항목 추가"; // 텍스트 추가
ul.appendChild(li); // 목록에 항목 추가
document.body.appendChild(ul); // 문서에 목록 추가
728x90
반응형