• 前端性能优化


    我们常提到性能好坏是由什么来衡量呢?访问页面地址 --> 页面首次加载数据 --> 渲染出完整页面的时长,非首次情况下,命中缓存的加载缓存数据 --> 渲染出完整页面的时长。一般我从下面几个方面着手去做,一般问题都不大。

    1、减小资源(静态资源,后端加载的数据)大小(webpack都可以搞定)

    • 压缩代码HTML/CSS/JS
    • 压缩图片、音视频大小
    • Tree-Sharking 消除无用代码

    2、避免同一时间的过多次数请求

    • CSS 实现雪碧图:使用background-position共享一张图
    • 图片懒加载:监听滚动后offsetTop,  使用src 替换 src(真实路径)
    • 列表懒加载(分批加载):监听滚动后offsetTop, 发送请求加载下一页的数据
    • 路由懒加载
    • 代码分包分块加载(webpack)
    • 预加载技术
    • 小程序分包、预下载等。

    3、缓存(空间换时间)

    • CDN 内容分发:获取更近网络节点缓存下来的静态资源
    • 浏览器缓存(自带)
    • 部分资源保存在LocalStorage或者APP缓存中(手动操作)

    4、代码

    HTML优化:

    • 使用语义化标签
    • 减少iframe:iframe是SEO的大忌,iframe有好处也有弊端
    • 避免重定向

    CSS优化:

    • 删除空样式
    • 不滥用浮动,字体,需要加载的网络字体根据网站需求再添加
    • 选择器性能优化
    • 避免使用表达式,避免用id写样式

    js优化:

    • 压缩
    • 减少重复代码

    5、其他

    • SSR 服务端渲染:解决SPA框架带来JS动态渲染页面带来的延迟和白屏问题
    搞了半天,我还以为我会呢
  • 相关阅读:
    Linux安装.net core
    在IIS中如何配置SSL(https)
    Lambda的前世今生
    Java建造者模式
    leetcode 83 Remove Duplicates from Sorted List
    【设计】Office
    【设计】简书品牌重构
    【设计总结】
    【交互设计】
    【设计总结】
  • 原文地址:https://www.cnblogs.com/dongdong1996/p/14415324.html
Copyright © 2020-2023  润新知