--- title: 문서 객체 모델(DOM) slug: Web/API/Document_Object_Model tags: - API - DOM - Document - Document Object Model - Guide - Overview - Reference translation_of: Web/API/Document_Object_Model ---

{{DefaultAPISidebar("DOM")}}

문서 객체 모델(DOM)은 메모리에 웹 페이지 문서 구조를 표현함으로써 스크립트 및 프로그래밍 언어와 페이지를 연결합니다. 이때 스크립트는 주로 JavaScript를 의미하나 HTML, SVG, XML 객체를 문서로 모델링 하는 것은 JavaScript 언어의 일부가 아닙니다.

DOM은 문서를 논리 트리로 표현합니다. 트리의 각 브랜치는 노드에서 끝나며, 각 노드는 객체를 갖습니다. DOM 메서드를 사용하면 프로그래밍적으로 트리에 접근할 수 있습니다. 이를 통해 문서의 구조, 스타일, 콘텐츠를 변경할 수 있습니다.

노드는 이벤트 처리기도 포함할 수 있습니다. 이벤트가 발생한 순간, 해당 이벤트와 연결한 처리기가 발동합니다.

더 알아보려면: DOM 소개 문서를 방문해보세요.

DOM 인터페이스

HTML DOM

문서는 다양한 HTML 관련 기능들을 포함하는 HTML 명세에 의해 확장된 {{DOMxRef("Document")}} 을 사용해 설명된 HTML 을 포함합니다.

HTML 객체는 또한 {{DOMxRef("Window")}} 인터페이스, 이에 관련된 {{DOMxRef("window.style", "Style")}}(보통 CSS), 컨텍스트에 관련된 브라우저의 히스토리인 {{DOMxRef("window.history", "History")}} 를 사용해 페이지가 그려지는 탭이나 창과 같은 브라우저의 다양한 기능들에 접근할 수 있게 해줍니다. 마지막에는, 문서의 {{DOMxRef("Selection")}} 이 완료됩니다.

자세한 내용은 HTML DOM API 문서를 참고하세요.

SVG 인터페이스

SVG 요소 인터페이스

SVG 데이터 타입 인터페이스

다음은 SVG 프로퍼티와 어트리뷰트 정의에 쓰이는 데이터 타입을 위한 DOM API입니다.

정적 타입

움직이는(animated) 형

SMIL 관련 인터페이스

기타 SVG 인터페이스

명세

Specification Status Comment
{{SpecName("DOM WHATWG")}} {{Spec2("DOM WHATWG")}}

같이 보기