Replies: 1 comment
-
1. 브라우저가 렌더링을 수행하는 과정을 설명해주세요.
2. JS 로드로 인해 DOM 생성이 중단되는 문제를 해결하는 방법을 설명해주세요.JS 로드로 인한 DOM 생성이 중단되는 문제를 해결하기 위해 script 태그에 async과 defer 어트리뷰트를 사용할 수 있습니다. async와 defer를 사용하면 HTML 파싱과 JS 로드가 비동기적으로 진행됩니다. async과 defer의 차이는 JS 실행시점입니다.
3. 리렌더링 과정에 대해서 설명해주세요.자바스크립트 코드로 인해 DOM이나 CSSOM이 변경된 경우, Render Tree도 변경됩니다. 이 변경된 Render Tree를 기반으로 레이아웃과 페인트 과정을 거쳐 브라우저의 화면이 다시 렌더링됩니다. 여기서 레이아웃 계산을 다시하는 것을 리플로우, 페인트를 다시 하는 것을 리페인트라고 합니다. 리플로우는 노드 추가/삭제, 요소의 크기/위치 변경, 윈도우 리사이징 등 레이아웃에 영향을 주는 변경이 발생한 경우에 한하여 실행됩니다. 레이아웃에 영향이 없는 변경은 리플로우 없이 리페인트만 실행됩니다. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Beta Was this translation helpful? Give feedback.
All reactions