常见的web前端性能优化方法总结「建议收藏」

常见的web前端性能优化方法总结「建议收藏」首先,我们要了解一下,前端优化的目的是什么从用户角度,优化能够让页面加载得更快、对用户的操作响应更快,给用户提供更为友好的体验。从服务商角度,优化能够减少页面请求数、或者减小请求所占带宽,节省资源。大概有如下优化方法,我们看一下:一、页面内容优化减少http请求次数减少DNS查询次数避免页面跳转缓存ajax延迟加载(一般用在图片多的页面中,滚动时才加载)预加载减少D…

大家好,又见面了,我是你们的朋友全栈君。

首先,我们要了解一下,前端优化的目的是什么

  1. 从用户角度,优化能够让页面加载得更快、对用户的操作响应更快,给用户提供更为友好的体验。
  2. 从服务商角度,优化能够减少页面请求数、或者减小请求所占带宽,节省资源。

大概有如下优化方法,我们看一下:

一、页面内容优化

  1. 减少http请求次数
  2. 减少DNS查询次数
  3. 避免页面跳转
  4. 缓存ajax
  5. 延迟加载(一般用在图片多的页面中,滚动时才加载)
  6. 预加载
  7. 减少DOM元素数量
  8. 减少iframe数量
  9. 避免404

二、css优化

  1. 将样式表置顶将 (CSS放在 HEAD中,防止浏览器有可能还未下载和解析到 CSS就已经开始渲染页面)
  2. 避免css表达式
  3. 用link代替@import
  4. 避免使用filters
  5. css文件合并与压缩

三、js代码优化

  1. 将脚本置底(将脚本内容在页面信息内容加载后再加载)
  2. 使用外部javascript和css文件
  3. 去除重复脚本,避免重复的资源请求
  4. 减少DOM访问(修改和访问DOM元素会造成页面的重绘和重排,循环对DOM操作更是减慢页面加载速度)
  5. js文件合并与压缩

四、图片优化

  1. 优化图片大小
  2. 尽量使用css sprite(精灵图也叫雪碧图)
  3. 不要在html中缩放图片
  4. 使用小且可缓存的favicon.ico

五、减少Cookie传输

  1. Cookie包含在每次请求和响应中,太大的Cookie会严重影响数据传输,因此哪些数据需要写入Cookie需要慎重考虑,尽量减少Cookie中传输的数据量

六、浏览器端使用缓存

  1. CSS、JavaScript、Logo、图标这些静态资源文件更新的频率都比较低,而这些文件又几乎是每次HTTP请求都需要的,如果将这些文件缓存在浏览器中,可以极好地改善性能。
  2. 用法:通过设置HTTP头中的Cache-ControlExpires属性,可设定浏览器缓存,缓存时间可以是数天,甚至是数月。

七、服务器端使用压缩

  1. 在服务器端对文件进行压缩,在浏览器对文件解压缩,可有效减少通信传输的数据量。文本文件的压缩率可达80%以上,因此HTML、CSS、JavaScript文件启用GZip压缩可达到较好的效果。但是压缩对服务器和浏览器产生一定的压力,在通信带宽良好,而服务器资源不足的情况下要权衡考虑。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148173.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pip卸载安装的所有python包「建议收藏」

    pip卸载安装的所有python包「建议收藏」pip卸载安装的所有python包

    2022年10月30日
    0
  • kafka主要用来做什么_kafka概念

    kafka主要用来做什么_kafka概念Kafka最初由LinkedIn公司开发的,并于2010年贡献给了Apache基金会,之后成为Apache顶级项目。目前Kafka已经定位为一个分布式流式处理平台,它以高吞吐、可持久化、可水平扩展、支持流数据处理等多种特性而被广泛使用。目前越来越多的开源分布式处理系统如Cloudera、Storm、Spark、Flink等都支持与Kafka集成。Kafka之所以受到越来越多的青睐,与它所“扮演”的三大角色是分不开的:消息系统:Kafka和传统的消息系统(也称作消息中

    2022年9月25日
    0
  • Java访问权限之 protected详解「建议收藏」

    Java访问权限之 protected详解「建议收藏」对于类的成员(包括成员变量和成员方法)而言,其能否被其他类所访问,取决于该成员的修饰词;而对于一个类而言,其能否被其他类所访问,也取决于该类的修饰词。在Java中,类成员访问权限修饰词有四类:private,无(包访问权限),protected和public,而其中只有包访问权限和public才能修饰一个类(内部类除外)。由于很多Java书籍对protected可见性的介绍都比较笼统,本文重点说明了protected关键字的可见性内涵。

    2022年10月29日
    0
  • clientwidth innerWidth offsetWidth

    clientwidth innerWidth offsetWidthclientWidth 在任何窗口系统中都是指用户内容能放置的空间clientWidth是每个document一个,一个窗口中可以放置多个document,比如你用frame或iframe就可以放置多个document,这相当于图形界面编程中的MDI(多文档窗口应用,比如Word,Excel就可以同时打开多个文档)。 window.innerWidth能获取…

    2022年7月22日
    7
  • SPI接口介绍

    SPI接口介绍SPI接口的全称是”SerialPeripheralInterface”,即串行外围接口。SPI接口主要应用在EEPROM、FLASH、实时时钟、AD转换器,还有数字信号处理器和数字信号解码器之间。SPI接口是在CPU和外围低速器件之间进行同步串行数据传输,在主器件的移位脉冲下,数据按位传输,高位在前,低位在后,为全双工通信,数据传输速度总体来说比I2C总线要快,速度可达到几十Mbps。S

    2022年6月18日
    41
  • 一键ghost备份不了的原因_ghost系统恢复

    一键ghost备份不了的原因_ghost系统恢复大家都有想要给重要的东西备份吧,系统也是可以备份还原的,小编这里给大家分享一键Ghost备份还原系统的方法,如果你有需要对系统进行备份或还原就可以用这个一键备份还原方法了。一键Ghost备份还原备份的系统镜像不仅可以在本机进行还原还可以在其他的电脑上还原操作系统,很多朋友需要对系统备份不知道怎么操作,小编接下来就给大家详细介绍操作方法。Ghost系统的备份:1、系统之家一键重装系统是一个非常受欢迎…

    2022年9月5日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号