手记

前端笔试第二部分

一、简述一次完整的http请求经过?

HTTP通信机制是在一次完整的HTTP通信过程中,Web 浏览器与 Web 服务器之间将完成下列几个步骤:

1. 建立TCP连接。

2. Web浏览器向Web服务器发送请求命令。

3. Web服务器应答。

4. Web服务器关闭TCP连接。

5 浏览器接受到服务器响应的数据。

详情请点击:http请求经过


二、有哪些方式可以实现多个页面间通信?

cookie、web worker、localeStorage、sessionStorage

cookie,兼容性很好,但是大概4kb.同时,cookie可以永久存在,也可以再回话结束后结束。要就关闭标签页回话立即结束时,不要用cookie,因为它还很有可能会存在一段时间,即使是session-cookie。

  1. 用户在浏览器输入url,发送请求,服务器接受请求

  2. 服务器在响应报文中生成一个Set-Cookie报头,发给客户端

  3. 浏览器取出响应中Set-Cookie中内容,以cookie.txt形式保存在客户端

  4. 如果浏览器继续发送请求,浏览器会在硬盘中找到cookie文件,产生Cookie报头,与HTTP请求一起发送.

  5. 服务器接受含Cookie报头的请求,处理其中的cookie信息,找到对应资源给客户端.

  6. 浏览器每一次请求都会包含已有的cookie.

Sessionstorage:不支持跨标签页共享数据。比如,每次新开启一个标签页都要求用户重新登录。

Localstorage:此处作者用localstorage事件来解决这个问题。思路:当打开一个新的标签页的时候,先询问是否有sessionstorage。如果有,现有标签页通过localstorage事件向新页面传递sessionstorage,新页面获取后设置。

详情请点击:多个页面间通信

详情请点击:web worker


三、同步加载和异步加载分别有什么优缺点?

同步加载与异步加载的区别如下:

同步加载:同步模式,又称阻塞模式,会阻止浏览器的后续处理,停止了后续的解析,因此停止了后续的文件加载(如图像)、渲染、代码执行。

异步加载:异步加载又叫非阻塞,浏览器在下载执行 js 同时,还会继续进行后续页面的处理。

为何使用异步加载原因:

优化脚本文件的加载提高页面的加载速度,一直是提高页面加载速度很重要的一条。因为涉及到各个浏览器对解析脚本文件的不同机制,以及加载脚本会阻塞其他资源和文件的加载,因此更多的采用异步加载。

四、简述浏览器渲染页面过程?

1、浏览器解析html源码,然后创建一个 DOM树。

2、浏览器解析CSS代码,计算出最终的样式数据。构建CSSOM树。

3、DOM Tree + CSSOM --> 渲染树(rendering tree)。

4、一旦渲染树创建好了,浏览器就可以根据渲染树直接把页面绘制到屏幕上。

详情请点击:浏览器渲染页面过程

5、如何对网站的文件和资源进行优化?

详情请点击:如何对网站的文件和资源进行优化

6、Http状态码有哪些?分别代表什么含义?

详情请点击:Http状态码




0人推荐
随时随地看视频
慕课网APP