当我们在浏览器中输入一个url时,背后都发生了什么,想要弄明白这个问题首选我们要知道浏览器的工作原理是什么?
浏览器的工作原理就是,web浏览器与web服务器之间通过http协议进行通讯的过程,c/s的握手协议就是http协议
浏览器接受到一个url之后发生的过程大致如下图:
接下来说下html里的内嵌资源是如何请求加载的 html的内嵌请求资源主要就是js,css,image
1.js和css的资源加载都是串行的,因为浏览器需要一个稳定的dom树结构,js中很有可能有代码会改变dom结构,浏览器为了防止这种情况就会阻止其他下载和呈现
2.因为js有语法定义,如果一个html里引用多个js文件的情况下,第二个文件里的函数很有可能引用了第一个文件里的变量和函数,此时如果先加载了第二个js浏览器就会解释错误,所以js要按照顺序串行加载,我们开发者在写代码时也要注意js的书写顺序
3.css的加载也是串行的,原理和js一样
4.图片的加载是并行的,可以同时加载几个,并且加载完成以后立即显示
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。