02 · 浏览器 · 网络 · 工程化
从输入 URL 到页面渲染发生了什么?
浏览器渲染流程:从 DOM 到 Composite 经历了哪些阶段?
重排(reflow)与重绘(repaint)有何区别,如何优化?
事件机制:捕获、冒泡与事件委托是怎么回事?
浏览器存储:cookie、localStorage、sessionStorage、IndexedDB 怎么选?
浏览器的进程与线程模型是怎样的?
Web Worker 是什么?前端怎么用多线程?和主线程怎么通信?
Service Worker 是什么?PWA 怎么做离线缓存?有哪些缓存策略?
HTTP 强缓存与协商缓存有什么区别?
同源策略是什么?跨域有哪些解决方案(CORS / JSONP / 代理)?
HTTP 协议是怎么演进的(1.0 / 1.1 / 2 / 3)?
HTTPS 是怎么保证安全的?TLS 握手发生了什么?
TCP 三次握手四次挥手,以及和 UDP 的区别?
WebSocket 和 SSE 有什么区别?分别怎么选?
HTTP 状态码与常见请求/响应头有哪些(含 301/302/307/308 区别)?
DNS 是怎么解析的?CDN 的原理是什么?
XSS、CSRF、点击劫持有什么区别?怎么防御?
前端性能指标(FCP/LCP/TTI/TBT/CLS/INP)都测什么?阈值与优化手段?
SPA 为什么会白屏?首屏怎么优化?
电商网站怎么做 SEO?结构化数据拿富媒体卡片,工程上怎么抢自然排名?
Webpack 与 Vite 的构建原理有何本质区别?
代码分割与懒加载是什么?怎么做、怎么权衡?
如何做代码分割与构建产物优化?
微前端实战:主子应用怎么注册、接入、通信、事件触发与状态托管?
Babel 的编译流程与 AST 是怎么回事?
Source Map、Polyfill 策略与 Monorepo 怎么理解?
如何直接运行 TypeScript?tsx / ts-node / tsc / node 有什么区别?