window 객체가 생성된다.
window 객체는 웹 페이지의 전역 객체로 웹 페이지의 tab마다 생성된다.Document 객체가 window 객체의 property로 생성되며, 웹 페이지를 해석해서 DOM tree의 구축을 시도한다.
Document 객체는 readyState property를 가지고 있으며, readyState 의 초깃값은 “loading” 문자열이다.Document 객체 요소와 텍스트 노드를 추가해 나간다.script element가 있다면 script element 안에 코드는 Javascript 문법에 따라 구문을 분석한다.
구문을 에러없이 성공적으로 분석(interpret, 해석)해 오류가 발생하지 않음이 확인되면, 코드를 실행한다.document.readyState 값이 “interactive” 문자열로 변경된다.Document 객체에 DOM tree 구축(build) 완료를 알리기 위해 DOMContentLoaded 이벤트를 발생시킨다.img 등의 요소가 이미지 파일등의 외부 리소스를 읽어들여야 한다면, 이 시점에 읽어들인다.
→ DomContentLoaded 이벤트 발생 이후document.readyState 프로퍼티 값이 “complete” 문자열로 변경된다.
마지막으로 웹 브라우저는 Window 객체를 상대로 load 이벤트를 발생시킨다.requestAnimationFrame() method
Window: cancelAnimationFrame() method
createTextNode() method: https://developer.mozilla.org/en-US/docs/Web/API/Document/createTextNode