浏览器运行原理
浏览器是一个软件,作用在于使用户与网页服务器或者文件系统的html文件(标准通用标记语言的一个内容)进行交互
功能:向服务器发出请求,展示出所选择的资源(html文件、pdf、图片、音频、声音等)。资源位置由用户使用uri(统一资源标识符:Uniform Resource Identifier)指定。
分类(按引擎分类):
trident引擎(internet explorer)
Webkit引擎(Chrome和Chrome)
Gecko引擎(Firefox)
Presto引擎(早期Opera)
构成:用户界面、浏览器引擎、渲染引擎、网络、UI后端、JS解释器、数据存储
构成详解:
用户界面:包括地址栏、后退/前进按钮、书签目录等,也就是你所看到的除了用来显示你所请求页面的主窗口之外的其他部分。
浏览器引擎:用来查询及操作渲染引擎的接口。
渲染引擎 - 用来显示请求的内容,例如,如果请求内容为html,它负责解析html及css,并将解析后的结果显示出来。
网络 - 用来完成网络调用,例如http请求,它具有平台无关的接口,可以在不同平台上工作。
UI后端 - 用来绘制类似组合选择框及对话框等基本组件,具有不特定于某个平台的通用接口,底层使用操作系统的用户接口。
JS解释器 - 用来解释执行JS代码。
数据存储 - 属于持久层,浏览器需要在硬盘中保存类似cookie的各种数据,HTML5定义了web database技术,这是一种轻量级完整的客户端存储技术