DOM(돔)이란 웹페이지의 HTML을 계층화시켜 트리구조로 만든 객체(Object) 모델입니다.
JavaScript는 이 model로 웹 페이지에 접근하고, 페이지를 수정할 수 있습니다.
DOM은 HTML인 웹페이지와 스크립팅언어(Javascript)를 서로 잇는 역할입니다!
예를 들어, 표준 DOM 에서는 문서 안에서 모든 <P>
elements 에 대한 list 를 리턴하는 getElementsByTagName method 를 정의해 봅시다.
var paragraphs = document.getElementByTagName("P"); // paragraphs[0] 은 첫번째 p 태그의 element이다```
웹 페이지를 수정하거나 생성하는데 사용되는 모든 property, method, event들은 objects로 구성됩니다.
자바스크립트로 작성 되었지만 문서와 문서의 요소에 접근하기 위해서는 DOM을 사용해야 합니다.
DOM은 프로그래밍 언어는 아니지만 DOM이 없다면 자바스크립트 언어는 웹 페이지 또는 XML 페이지 및 요소들과 관련된 모델이나 개념들에 대한 정보를 갖지 못하게 됩니다.
초창기에는 자바스크립트와 DOM이 밀접하게 연결되어 있었지만, 나중에는 각각 분리되어 발전해왔습니다.
페이지 콘텐츠는 DOM에 저장되고 자바스크립트를 통해 접근하거나 조작할 수 있습니다.
API (web or XML page) = DOM + JS (scripting language)