问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

9个前端性能优化的最佳实践

发布网友 发布时间:2024-09-10 10:33

我来回答

1个回答

热心网友 时间:2024-10-11 14:58

现代互联网时代,打开一个Web平台,是留下还是离开,只需要1分钟,因此前端的性能优化至关重要。

由于前端优化不佳,大多数网站无法提供令人满意的用户体验,最常见的情况是数据加载和图像优化不佳,本文分享几个优化策略。

资源最小化

资源(静态资源)压缩是指从HTML、CSS和JavaScript中删除不需要加载的不必要的冗余数据的过程。这包括删除代码注释和格式、空白字符、未使用的代码、换行符等。

缩小HTML、CSS和JavaScript将加快前端加载时间,因为它减少了需要从服务器请求的代码量。

生成HTML、CSS和JavaScript代码的优化版本可以借助工具,如下:

HTML:PageSpeedInsights、HTMLMinifier。

CSS:cssmin.js、ChromeDevTools中的Coverage工具、YUICompressor。

JavaScript:JSMin、ChromeDevTools中的Coverage工具。

压缩文件

对于WEB项目,文件越大,加载所需的时间就越长,现代WEB平台通常有大量的HTML、CSS和JavaScript包。

通过使用合适的方法压缩文件,可以轻松地对前端的加载时间产生重大影响。以下是可以遵循的两个不错的文件压缩选项:

Gzip:最流行的数据压缩和解压缩方法,所有现代浏览器都支持,Gzip在将站点的HTML、CSS和JavaScript包发送到浏览器之前先在服务器端对其进行压缩,然后在客户端解压缩文件并传送内容。Brotli:与当前可用的压缩方法相比,它提供了最佳的压缩率,根据CertSimple的研究,Brotli压缩JavaScript文件比Gzip小14%,而HTML和CSS压缩率比Gzip好21%和17%。

图片优化

说到网站,图像是重要的组成部分,互联网上93.7%的网站至少使用一种图像文件格式,因为它们有助于提高用户参与度,更加吸引用户眼球。

但是,使用图像的负面影响是会对前端加载时间产生不利影响。但是,现在有多种方式可以优化图像:

使用webp或avif

使用webp和avif等新图像格式比jpg和png等旧格式具有更好的性能。

webp比png小26%,比jpg小25-35%。avif比jpg小50%,比webp小20%。

但是,缺点是浏览器支持还不够普遍。webp最近获得了浏览器支持的普遍支持,可能存在旧版本不支持它。另一方面,avif仅在Chrome和Opera中得到了支持。

提供正确尺寸的图像

减少图像加载时间和提高网站性能的另一种方法是使用响应式图像。超过50%的流量来自智能手机和平板电脑,将图像缩放到主流设备尺寸并使用。

除了选择合适的格式和尺寸外,还有其他几种方法,通过图像优化来减少前端加载时间,以下是可以使用的一些其他方法:

图像压缩

使用渐进式JPEG

为连接速度较慢的用户提供较小的图像

使用HTTP/2、HTTP/3而不是HTTP/1.1

使用图像集

减少服务器调用次数

通常,前端向服务器发出的请求越多,加载的时间就越长。因为在呈现页面之前,向服务器发送任何请求都需要完全通信。可以通过多种方式来减少加载页面所需的服务器请求数量。

CSSSprites:这是减少服务器调用次数的最简单方法之一,主要是减少UI相关的图片资源。实现原理不是加载10个独立的图像到网站,而是使用图像集合拼接成一个图像文件,然后通过使用CSS中的background-image和background-position属性来显示所需的图像区域。这样做可以减少了所需的服务器请求数量。

减少第三方插件的大量外部请求。

防止链接到不存在的文件。

此外,还可以查看服务器端渲染以加快应用程序的初始加载速度。

删除不必要的字体

自定义字体已经变得非常流行,因为它有助于为网站添加个性化展示,但这些是以牺牲性能为代价。

自定义字体的大小可能非常大,特别是中文字体,而网络字体(例如Google字体)会将HTTP请求添加到外部资源,这会影响页面渲染的速度。

以下是在网站中使用字体时可以采取的优化措施:

将字体转换为最有效的格式:加载像WOFF2这样的现代格式可以使字体文件大小比其他格式减少约30%。

子集字体以删除未使用的字符:综合字体文件包含许多可能永远不会使用的语言的字符。通过子集字体,可以从字体中删除不需要的字符,只保留需要在网站上编写内容的内容。

预加载页面明确用到的字体。

延迟加载

延迟加载有助于进一步缩短前端加载时间。使用延迟加载,网页首先只加载需要的内容,并在用户需要时加载剩余的内容。

除了延迟占位符加载之外,还有其他几个选项,例如,原生延迟加载和模糊图像效果。

缓存

如果不加缓存,用户每次访问都需要重新下载所有的资源,避免类似现象的最佳方法是使用缓存技术。如果配置适当,浏览器会将文件存储在其本地缓存中,并避免为来自服务器的后续页面访问加载相同的资源。

缓存服务器:用户请求从缓存服务器集合发送到最近的缓存服务器,即CDN。

内存缓存:通过将数据的某些部分(例如:JavaScript变量)存储在内存中,无需为路由更改重新加载它们。

磁盘缓存:类似于内存缓存,不同之处在于它使用通常由浏览器处理的传统文件存储。

使用预取

资源预取是另一种可用于优化前端数据加载性能的增强技术。作为开发人员,比浏览器更了解应用程序。因此,预取使用此信息来提示浏览器即将可能需要的资源。

预取加载资源以预期它们需要减少资源的等待时间。主要有三种类型的预取。虽然链接预取是最流行和最广泛使用的方法,但DNS预取和预渲染也是有用的选项。

链接预取

链接预取使浏览器能够收集用户可能在最近的将来请求的资源。因此,开发人员可以假设用户可能访问特定网页的位置。

但是,链接预取仅适用于图像和JavaScript等可缓存资源。

DNS预取

每当用户请求托管在特定IP地址中的资产时,就会执行DNS查找以查找IP地址所属的域名。

DNS预取允许浏览器在后台对网页中的链接执行DNS查找,同时用户浏览当前页面,以最大限度地减少用户在启用DNS预取的情况下单击链接时的延迟。

CDN

前端内容(包括HTML页面、样式表、JavaScript文件和图像)的加载速度可以使用CDN进行优化,效果也是最明显的。CDN是一组分布在多个地理位置的服务器,用于存储内容的缓存版本以快速响应给最终用户。

还有一种特定类型的CDN,称为图像CDN,它非常擅长优化图像。有了这些,可以节省40-80%的图像文件大小。鉴于图像通常占据页面重量的一半以上,为图像集成CDN可以显着提高加载速度。

总结

性能黄金法则:80-90%的最终用户响应时间用于下载前端组件,例如图像、样式表、脚本等。

因此,优化前端数据加载对于降低跳出率和增加用户在网站上的停留时间至关重要。

作者:天行无忌
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...出现代码0x000000ed,(0x89b89900,0xc0000006,0x00000000,0x00000000... 电脑蓝屏了***0X000000ED (0X89A2F900,0XC0000006,0X000000 电脑开机蓝屏stop:0x000000ed(0x89d1be30,0xc0000006,0x00000000,0x0000... 电脑蓝屏stop:0x000000ed(0x894f2900,0xc0000006,0x00000000,0x00000000... 铜钱如何清洗怎样保存? 装修时墙壁上的黑点怎么去除? 除草剂有哪几种 ...我想要的图层大很多,怎么方便直接将想要图层保存成图片··?_百度... 安全员考出来了怎么申请C证 C证安全员考完就能挂吗 这些前端项目性能优化方法你还不知道吗? 干货!这九种前端项目性能优化方法,总有一种适合你 日本的现代平面设计为何那么出色?【设计史太浓】 日本的艺术有哪些特点 自考什么时候可以入学? 反面造句 反面造句举例 承包方与发包方有什么样的合同关系? He said something to him kindly.的翻译 这里的“kindly”是指什么意思? 脖子不舒服感觉有点胀怎么回事 脖子感觉不舒服是怎么回事 脖子两侧不舒服怎么回事 脖子一直不舒服怎么办 脖子两侧不舒服怎么办 脖子不舒服紧绷的感觉怎么回事 最近右侧脖子不舒服是怎么回事 脖子左边不舒服是怎么回事呢 化性起伪的成语出处 李斯的法律思想和息讼之间有什么联系 联想电脑bios进去是怎么操作的 2024天津统招专升本要考有哪些科目 天津初三下学期有什么考试 妨害清算罪的构成条件是怎样的 妨害清算罪认定 吸收辐射的室内植物 身上很痒 一抓就起红疙瘩像蚊子咬了一样 以前没有这种情况 买了好多... 华为手机怎么可以上两个微信 中央人民广播电台《千里共良宵》姚科常用的那个背景音乐的... 千里共良宵在哪个频道 《神州夜航》并入《千里共良宵》后,青音和林白的角色如何转变? 早上好问候语温馨短句 满满正能量心情变好 退休后旧伤复发可以认定工伤吗? 2021微信早安问候语 好听的早安心语一句话 工伤鉴定以后旧伤复发怎么处理? 工伤职工旧伤复发怎么确认? 2021早上好问候语大全 适合早上问候语的句子 老工伤旧伤复发需工伤鉴定吗? 成都市工伤旧伤复发怎么鉴定? 山东省工伤人员旧伤复发鉴定的程序是什么? ...现在左耳听不太清楚,而且会耳鸣,这是因为我耳朵怎么了啊?_百度...