## `Parsing`란? 구문 분석. 네트워크를 통해 받은 HTML 원시 바이트를 DOM이나 CSSOM으로 바꾸는 작업. 웹페이지가 표시되는 단계인 `탐색` > `응답`>`구문 분석(Parsing)`> `렌더` 중 하나다. 세부적으로 변환 > 토큰화 > Lexing > DOM/CSSOM 생성으로 나뉘며, 생성된 DOM/CSSOM은 이후 단계인 [[2. Render|Render]]의 기반이 된다. ## `Parsing`의 작동 방식 ![[Pasted image 20231106183431.png]][^1] ### 1. 변환 브라우저가 원시 바이트를 문자로 변환하는 과정. 이때 변환하는 규칙이 바로 `<meta charset="UTF-8">` 에 적혀 있는 `UTF-8` 같은 인코딩 규칙이다. ### 2. 토큰화 브라우저가 문자열을 [w3c 표준](https://www.w3.org/TR/2011/WD-html5-20110113/tokenization.html)에 맞게 토큰화하는 과정. ### 3. Lexing 토큰들을 속성과 규칙을 정의하는 '객체'로 변환하는 과정. 이때는 트리 데이터 구조로 연결되지 않았기 때문에 DOM/CSSOM은 아니다. ### 4. DOM/CSSOM 생성 HTML 마크업을 통해 렉싱된 객체를 트리 데이터 구조로 연결하는 작업. ## Reference [^1]:https://web.dev/articles/critical-rendering-path/constructing-the-object-model?hl=ko