Skip to content

40.介绍一下你对浏览器内核的理解? #40

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
webVueBlog opened this issue Mar 15, 2020 · 2 comments
Open

40.介绍一下你对浏览器内核的理解? #40

webVueBlog opened this issue Mar 15, 2020 · 2 comments
Labels
浏览器 浏览器

Comments

@webVueBlog
Copy link
Member

No description provided.

@webVueBlog webVueBlog added the 浏览器 浏览器 label Mar 15, 2020
@webVueBlog
Copy link
Member Author

主要分成两部分:渲染引擎(layout engineer或Rendering Engine)和JS引擎

渲染引擎:负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入CSS等),以及计算网页的显示方式,然后会输出至显示器或打印机。浏览器的内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同。所有网页浏览器、电子邮件客户端以及其它需要编辑、显示网络内容的应用程序都需要内核

JS引擎则:解析和执行javascript来实现网页的动态效果

最开始渲染引擎和JS引擎并没有区分的很明确,后来JS引擎越来越独立,内核就倾向于只指渲染引擎

@webVueBlog webVueBlog pinned this issue Mar 15, 2020
@webVueBlog webVueBlog unpinned this issue Mar 15, 2020
@webVueBlog
Copy link
Member Author

There are two main parts: the layout engineer or Rendering Engine and the JS Engine

Rendering engine: responsible for taking the content of the page (HTML, XML, images, etc.), organizing the information (e.g., adding CSS), and calculating how the page will be displayed, which is then output to the monitor or printer. The browser's kernel will interpret the syntax of the page differently, so the rendering will be different. All web browsers, E-mail clients, and other applications that edit and display web content require a kernel

The JS engine parses and executes javascript to make the page dynamic

At first there was no clear distinction between the rendering engine and the JS engine, but as the JS engine became more and more independent, the kernel tended to refer only to the rendering engine

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
浏览器 浏览器
Projects
None yet
Development

No branches or pull requests

1 participant