在正式学习前端之前,让我们来了解一下浏览器是如何工作的!
众所周知,浏览器可谓是目前使用率最高的软件。从 1992年 世界上第一个图形网页浏览器( Erwise )的诞生发展到现在,市面上主流的浏览器有 IE、Firefox、Safari、Chrome及Opera。万恶的ie果断已经被微软放弃,这对于我们前端程序员来说,简直是出了一口恶气!浏览器的发展史:请戳这里。
同一个web页面在不同的浏览器中,可能会呈现不同的效果甚至会错乱。这是为什么?这是因为可能该页面使用了浏览器不支持的技术,也有可能是分辨率造成的。这就产生了浏览器的兼容性问题,高版本不兼容低版本浏览器。不同的浏览器可能使用着不同的内核,也有使用相同内核的不同浏览器,只是改头换面为了更加符合用户的需求。
浏览器根据访问的地址(网址)来确定信息资源的位置,并将用户感兴趣的资源读取出来,然后解析html文件,把图像、文字或者多媒体信息展现出来形成了用户浏览的网页。
web服务器对静态网页的处理过程:
用户通过浏览器向服务器发出的静态网页请求–>web服务器找到这个网页–>分析其中相关联的各种文件(如图片,css,js等等)–>找到这些相关联的文件–>一并传回到浏览器的缓冲区–>浏览器进行解析执行文件–>浏览器呈现网页内容
浏览器的主要组件包括:
- 用户界面 - 包括地址栏、前进/后退按钮、书签菜单等。除了浏览器主窗口显示的你请求的页面外,其他显示的各个部分都属于用户界面。
- 浏览器引擎 - 在用户界面和渲染引擎之间传送指令。
- 渲染引擎 - 负责显示请求的内容。如果请求的内容是 HTML,它就负责解析 HTML 和 CSS 内容,并将解析后的内容显示在屏幕上。
- 网络 - 用于网络调用,比如 HTTP 请求。其接口与平台无关,并为所有平台提供底层实现。
- 用户界面后端 - 用于绘制基本的窗口小部件,比如组合框和窗口。其公开了与平台无关的通用接口,而在底层使用操作系统的用户界面方法。
- JavaScript 解释器 - 用于解析和执行 JavaScript 代码,比如chrome的javascript解释器是V8。
数据存储 - 这是持久层。浏览器需要在硬盘上保存各种数据,例如 Cookie。新的 HTML 规范 (html5)定义了“网络数据库”,这是一个完整(但是轻便)的浏览器内数据库。
到这里我也懒得废话了,此处内容摘自网络,详情请戳这里。
--猫哆哩带你飞