前端优化基础
浏览器发送HTTP请求
减少请求次数
资源合并
使用打包工具
使用webpack等工具,对js和css资源进行打包,避免js或css文件过多。
但也要考虑打包文件过大的问题,需要再这之间进行综合考虑。
在SPA中常用的实践是,webpack提取出的公用文件先加载,然后路由相关的文件按需加载。
精灵图
多个小图合并后的图片。
使用的时候使用background-position进行定位使用。
缓存
HTTP Cache
强缓存
强缓存的特定是不需要询问服务器,它通过expires和cache-control来实现。cache-control的优先级高于expires,它们都用来表示过期时间,expires是存储时间戳,cache-control使用max-age来表示相对时间。
cache-control 的no-cache不询问浏览器,直接请求服务器(进行协商缓存)。 而no-store则不是不使用任何缓存策略。 s-maxage只在代理服务器中生效。
如果资源没有过期,则会直接使用该资源。
协商缓存
协商缓存是请求服务器后,服务器来判断是返回新的资源,还是告诉浏览器使用旧的资源。
服务器每次返回资源会带有Last-Modified时间戳,每次服务器请求带上If-Modified-Since的时间戳,由服务器来判断资源修改时间是否与该时间一致。
评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果