1.开篇词
开篇词 _ 参透了浏览器的工作原理,你就能解决80%的前端难题
10.课外加餐
2.宏观视角下的浏览器
01 _ Chrome架构:仅仅打开了1个页面,为什么有4个进程?
02 _ TCP协议:如何保证页面文件能被完整送达浏览器?
03 _ HTTP请求流程:为什么很多站点第二次打开速度会很快?
04 _ 导航流程:从输入URL到页面展示,这中间发生了什么?
05 _ 渲染流程(上):HTML、CSS和JavaScript,是如何变成页面的?
06 _ 渲染流程(下):HTML、CSS和JavaScript,是如何变成页面的?
3.浏览器中的JavaScript执行机制
07 _ 变量提升:JavaScript代码是按顺序执行的吗?
08 _ 调用栈:为什么JavaScript代码会出现栈溢出?
09 _ 块级作用域:var缺陷以及为什么要引入let和const?
10 _ 作用域链和闭包 :代码中出现相同的变量,JavaScript引擎是如何选择的?
11 _ this:从JavaScript执行上下文的视角讲清楚this
4.V8工作原理
12 _ 栈空间和堆空间:数据是如何存储的?
13 _ 垃圾回收:垃圾数据是如何自动回收的?
14 _ 编译器和解释器:V8是如何执行一段JavaScript代码的?
5.浏览器中的页面循环系统
15 _ 消息队列和事件循环:页面是怎么“活”起来的?
16 _ WebAPI:setTimeout是如何实现的?
17 _ WebAPI:XMLHttpRequest是怎么实现的?
18 _ 宏任务和微任务:不是所有任务都是一个待遇
19 _ Promise:使用Promise,告别回调函数
await:使用同步的方式去写异步代码
6.浏览器中的页面
21 _ Chrome开发者工具:利用网络面板做性能分析
22 _ DOM树:JavaScript是如何影响DOM树构建的?
23 _ 渲染流水线:CSS如何影响首次加载时的白屏时间?
24 _ 分层和合成机制:为什么CSS动画比JavaScript高效?
25 _ 页面性能:如何系统地优化页面?
26 _ 虚拟DOM:虚拟DOM和实际的DOM有何不同?
27 _ 渐进式网页应用(PWA):它究竟解决了Web应用的哪些问题?
28 _ WebComponent:像搭积木一样构建Web应用
7.浏览器中的网络
1:HTTP性能优化
2:如何提升网络速度?
3:甩掉TCP、TLS 的包袱,构建高效网络
8.浏览器安全
32 _ 同源策略:为什么XMLHttpRequest不能跨域请求资源?
33 _ 跨站脚本攻击(XSS):为什么Cookie中有HttpOnly属性?
34 _ CSRF攻击:陌生链接不要随便点
35 _ 安全沙箱:页面和系统之间的隔离墙
36 _ HTTPS:让数据传输更安全
9.结束语
结束语 _ 大道至简
评论0