Window
DOM, BOM 을 모두 가지고 있는 최상위 객체이다.
DOM ( Document Object Model, 문서 객체 구조 )
Dom 이란 Document Object Model 의 약자로 HTML 문서를 객체로 표현한 것이다.
보통 웹 페이지를 제어할 수 있게 만든 문서 객체 구조로, Core DOM, HTML DOM, XML DOM 으로 나뉜다.
BOM ( Browser Object Model, 브라우저 객체 구조 )
BOM 은 자바스크립트가 브라우저와 소통하기 위해 만들어진 모델이다.
공식 표준은 아니지만 브라우저 대부분이 자바스크립트와 상호작용에 있어 비슷한 메소드와 동작 하기에 BOM 이라고 부른다. window 객체를 통해 접근이 가능하다.
navigator | 브라우저명과 버전정보를 속성으로 가짐 |
window | 최상위 객체로, 각 프레임별로 하나씩 존재 |
document | 현재 문서에 대한 정보 |
location | 현재 URL에 대한 정보 브라우저에서 사용자가 요청하는 URL |
history | 현재의 브라우저가 접근했던 URL history |
screen | 브라우저의 외부환경에 대한 정보를 제공 |
DOM vs BOM
서로 제어하는 영역이 다르다. DOM 은 Document 를 다루는, 즉 웹 서비스에서 현재 도메인에 들어와서 보이는 모든 웹 문서에 대한 제어 변경을 하는 것, BOM 은 window 속성에 속하여 documment 가 아닌, window 를 제어하는 구조이다.
Reference