DOM이란?
기타 포스팅입니다.
- Firebase DB에서 값을 불러올 수 없는 문제 해결
- 브라우저 동작 원리
- DOM이란?
- 이벤트 버블링과 캡처링
- 번들링이 뭔데?
- 프로세스와 쓰레드의 차이점
- CSR, SSR, SSG의 차이
- 라이브러리와 프레임워크
- 쿠키와 웹스토리지에 대해
- 크로스 브라우징이란?
- 알면 유용한 vscode 단축키들
- HTTP와 HTTPS의 차이점, HTTPS의 과정 및 장점
- GET과 POST의 특징
- LOL 전적검색 개발 - personal key 발급 승인받기
- 서버와 클라이언트, 그리고 소켓주소 간단정리
- URL의 구조에 대해
DOM을 어느정도는 대충 알지만 누군가가 DOM이 무엇이냐고 다짜고짜 묻는다면 명확히 대답하기 어려웠습니다.
그래서 DOM에 대해서 공부한 내용을 간략히 정리해보려고 합니다.
DOM ?
DOM은 Document Object Model의 약자입니다. 문서 객체 모델이라고도 합니다.
그냥 문서 객체 모델? 로 해석하려고 하면 잘 이해가 되지 않습니다.
쉽게 정리하면 DOM은 HTML 코드를 해석해서 요소들을 트리형태로 구조화해 표현하는 형식입니다.
그러니까 브라우저가 HTML 코드를 해석해서 트리 형태로 구조화해서 표현하는 문서(데이터)를 생성하게 되는데 이게 DOM인 것입니다. 브라우저는 DOM을 통해서 화면에 웹 컨텐츠를 렌더링합니다.
DOM의 목적
HTML코드를 해석해서 그대로 브라우저에 렌더링해주는 것이 브라우저의 역할인데 왜 중간에 DOM을 형성하는 걸까요?
자바스크립트를 사용해서 이 문서에 대한 스크립트를 작성할 수 있게 해주는 데 목적이 있기 때문입니다.
DOM은 자바스크립트를 사용해서 웹 컨텐츠를 추가, 수정, 삭제, 이벤트 처리 등을 정의할 수 있도록 제공되는
프로그래밍 인터페이스입니다.
자바스크립트가 어떤 동작을 구현하면 DOM에 그 결과가 반영되어 웹브라우저 화면이 다시 렌더링됩니다. HTML 코드는 정적인데, 화면이 사용자와 동적인 상호작용을 하는데 DOM이 그 역할을 해주는 것입니다.
End.