前端性能优化
做想做的事,去想去的地方,爱想爱的人,始终如一,Do not give up easily --along
言归正传,大家不论在平常写代码,还是面试,或者在做项目时,在随着代码量的增加,业务逻辑的处理,项目的性能会越来越差,在浏览页面时体验极差,那该如何解决呢,接下来我就要跟大家说说我了解和学习到的前端性能优化方案,可能有很多不到之处,希望大家见解~
一、图片优化
1.原因: 一个网站中能够最直观、清晰的呈现给用户的还是图片,可以直接的表达网站的主题内容和主题,可以随着图片的增多,在加载的时候,浏览器会去下载这些资源,可能导致网页加载缓慢,对用户 体验极差~ 2.图片分类 1.jpg全名JPEG. JPEG图片是以24位颜色存储单个视图. 2.png可移植网络图片格式 3.GIF 4.Svg可缩放矢量图形是基于可扩展标记语言 5.Webp和APNG,出现比较晚未被web标准所采纳 3.优化方法 1.使用精灵图 2.使用占用空间更小的favion.ico 3.使用webp图片 4.上线前对图片压缩,减小占用内纯.
二、减少http请求次数
1.原因: 浏览器在解析dom的时候,大多时候都在请求http加载资源,一个页面可能会有很多的请求,这样大大耗费了性能. 2.解决: 1)可以将多个资源的加载捆绑成一个资源 2)可以将多个图片拼接成一张图片,使用x,y坐标实现显示的内容
三、资源加载
1.使用link加载资源不要使用!import 2.link标签放在上部 3.script标签放在底部 原因:js是单线程,加载顺序也是自上而下执行,首先要让最直观的结构和样式加载出来,呈现给用户,然后再加在行为.
四、延迟加载
1.可以使用懒加载技术 实现:首先展示给用户的是首页,可以让其他页面的内容或者用户看不到的内容延迟可以,只有在触发某个条件的时候再去提前加载.
五、减小cookie的大小
原因:Cookie被用来做认证或个性化设置,其信息被包含在http报文头中,对于cookie我们要注意以下几点,来提高请求的响应速度, 解决:<br /> 去除没有必要的cookie,如果网页不需要cookie就完全禁掉 将cookie的大小减到最小 设置合适的过期时间,比较长的过期时间可以提高响应速度。
六、避免使用闭包
原因:使用闭包会把变量值始终保存在内存上,对网页性能有很大的损耗,在ie中可能还会导致内存泄露.
七、减少DOM的数量
原因:在我们做一个大项目时,dom数量可能会有几万个,与几百个几千个相比,性能是由很大的差距的.所以尽量减少DOM的数量