前端需了解的HTTP知识 前端需了解的网络知识HTTP 版本发展过程HTTP1.0● 新增了 POST 请求方式● 新增了请求头、http 状态码● 新增了 cookie HTTP1.1● 新增了 keep-alive 长连接● 新增了 pipeline 管道● 新增了 PUT、DELETE、OPTIONS、PATCH 等新的请求方式 HTTP2.0● 头部支持二进制协议、支持头部压缩● 新增了多路复用 HTTP1.1 有 2024-09-08 网络 #HTTP
如何优化构建速度 如何优化构建速度优化 loader 匹配范围在使用 loader 时,可以通过配置 include、exclude、test 属性来匹配文件,接触 include、exclude 规定哪些匹配应用 loader 1234567891011121314module.exports = { module: { rules: [ { // 如 2024-09-07 工程化 #webpack
HTTP缓存机制 HTTP 缓存机制强缓存 涉及到字段:● 请求返回 Expire 字段 http1.0 的产物,来设置过期时间,它是服务端生成,可能存在客户端和服务器端时间不一致,或者前端可以修改本地时间,导致缓存命中产生误差,目前基本都被 Cache-Control 替代了● Cache-Control http1.1,一般使用 max-age 来设置缓存多长时间,单位秒;no-store 禁止一切缓存,no- 2024-09-07 网络 #HTTP
React 批处理机制 React 批处理机制我们开发过程中发现,调用 setState,然后获取 state 时候,发现不是最新的值,这是为什么呢?这就和 React 批处理机制有关系。一次性调用好几次 setState,肯定不会调用一次组件就更新渲染一次,这样太消耗性能了。react 做法,每次调用都记录下来,然后合并得到最新的值,最后才执行更新。一般来说生命周期、react 事件里面都会命中批处理机制。批处理的流程 2024-09-06 React #React原理
浏览器渲染过程、回流、重绘 浏览器渲染过程、回流、重绘当浏览器收到 HTML 文档后,会产生一个渲染任务,并将其传递给渲染主线程得消息队列,在事件循环机制得作用下,渲染主线程将取出消息队列中得渲染任务,开启渲染流程。整个渲染分为多个阶段:html解析、样式计算、布局、分层、绘制、分块、光栅化、画,每个阶段都有明确的输入输出,上一个阶段的输出作为下一个阶段的输入。渲染流程如下: 主线程主要就是把绘制 2024-09-04 浏览器 #回流、重绘
JavaScript微任务、宏任务 JavaScript 微任务、宏任务两大任务JavaScript 执行过程中会产生两大任务:同步任务、异步任务。 同步任务:代码从上到下读取立即执行,例如声明语句、for、判断语句。 异步任务:异步任务又分为微任务,宏任务。例如 ajax、setTimout、Promise 等,代码从上到下执行,遇到这些异步代码,并不会立即执行,而是加入任务都队列,等待协调执行。 任务队列 2024-09-04 JavaScript #JavaScript异步