发表于: 2017-04-29 10:08:01

0 945


今天完成的事情:

解决了banner轮播图左右切换控件不稳定的问题;

明天计划的事情:

有事请假;

遇到的问题:

暂无:

收获:

一个页面从输入 URL 到页面加载显示完成,这个过程中都发生了什么?

分为 4 个步骤:

1)当发送一个 URL 请求时,不管这个 URL Web 页面的 URL 还是 Web 页面

上每个资源的 URL,浏览器都会开启一个线程来处理这个请求,同时在远程 DNS 服务器

上启动一个 DNS 查询。这能使浏览器获得请求对应的 IP 地址。

2) 浏览器与远程 Web 服务器通过 TCP 三次握手协商来建立一个 TCP/IP 连接。

该握手包括一个同步报文,一个同步-应答报文和一个应答报文,这三个报文在 浏览器

和服务器之间传递。该握手首先由客户端尝试建立起通信,而后服务器应答并接受客户

端的请求,最后由客户端发出该请求已经被接受的报文。

3)一旦 TCP/IP 连接建立,浏览器会通过该连接向远程服务器发送 HTTP GET 请求。远程服务器找到资源并使用 HTTP 响应返回该资源,值为 200 HTTP 响应状态表示一个正确的响应。

4)此时, Web 服务器提供资源服务,客户端开始下载资源。请求返回后,便进入了我们关注的前端模块简单来说,浏览器会解析 HTML 生成 DOM Tree,其次会根据 CSS 生成 CSS Rule Tree,而 javascript 又可以根据 DOM API 操作 DOM

如何判断当前脚本运行在浏览器还是 node 环境中?

通过判断 Global 对象是否为 window,如果不为 window,当前脚本没有运行在浏览器中;


返回列表 返回列表
评论

    分享到