前端性能和加载体验优化实践(附:PWA、离线包、内存优化、预渲染)

探讨了页面加载卡顿的原因并提出了多种优化方法。主要原因包括项目包或第三方脚本过大、JavaScript 执行阻塞页面加载、图片体积大且多等。优化策略包括构建缩包按需加载、减少图片体积等。文章还详细介绍了如何通过 Webpack 插件分析项目中用到的 npm 包及大小,以及如何通过调整图片尺寸、格式转换、压缩等方式减小图片体积。

强缓存和协商缓存

介绍了浏览器缓存机制的两种方式:强缓存和协商缓存。强缓存通过 Expires 和 Cache-Control 实现,本地直接读取资源;协商缓存通过 Last-Modified / If-Modified-Since 和 Etag / If-None-Match 判断是否更新,命中时返回 304 状态码以减少资源加载。

H5 localStorage入门

讲解了 localStorage 的定义、属性及常用方法,包括 setItem、getItem、removeItem 和 clear 的使用方式。介绍了如何存储和读取复杂数据类型,并通过监听 storage 事件实现浏览器标签间通信。强调 localStorage 的使用限制,如同域名限制、低版本浏览器兼容性及移动端潜在问题,并提供跨域通信的解决方案。