HTML은 태그(tag)로 구성되며 태그의 본질은 객체다.
태그하나가 감싸고 있는 ‘자식’태그는 중첩태그(nested tag)라고 부르며 태그내의 텍스트 역시 객체다.
HTML문서내 객체들은 자바스크립트로 접근할 수 있으며 페이지를 조작하려면 이 객체를 사용하게 된다.
document.body.style.background = 'red';
DOM 예제
<!DOCTYPE HTML>
<html>
<head>
<title>사슴에 관하여</title>
</head>
<body>
사슴에 관한 진실.
</body>
</html>

그림의 네모칸들이 객체를 나타내며 노란색객체를 보면 텍스트뿐만아니라 빈칸, 줄넘김도 하나의 객체를 나타낸다.
이것은 시작태그와 자식시작태그와의 사이에 존재하는 빈칸과 줄넘김도 하나의 텍스트객체가 된다는 것이다.
노드 : DOM트리를 구성하는 객체들
요소노드 : 하늘색으로 태그객체
텍스트노드 : 노란색으로 텍스트 또는 빈칸, 줄넘김
텍스트노드의 특징
1. 자식노드를 가질 수 없다.
2. 역사적인 이유로, <head> 이전의 공백과 새줄은 무시된다.
노드의 개념
HTML문서내에 있는 모든 것은 객체로서 DOM트리를 구성하는 노드가 된다. 즉 태그와 텍스트, 빈칸, 줄넘김 모든 것이 노드가 되는 것이다.
HTML문서 전체를 나타내는 document객체 또한 DOM노드다.
그래서 document객체로부터 시작하여 모든 노드들이 자바스크립트로 document객체로부터 접근이 가능하다.
노드타입은 총 열두가지 인데, 실무에선 주로 다음 네가지 노드를 다룬다.