提升页面性能的方法有哪些?
- 资源压缩合并,减少http请求
- 非核心代码异步加载
- 异步加载的方式
- 动态脚本加载
- defer
- async
- 异步加载的区别
- defer是在HTML解析完之后才会执行,如果是多个,按照加载的顺序依次执行
- async 是在加载完之后立即执行,如果是多个,执行顺序和加载顺序无关
- 异步加载的方式
- 利用浏览器缓存
-
缓存的分类
- 强缓存
属性 描述 Expires Expires:Thu, 21 Jan 2017 23:39:02 GMT Cache-Control Cache-Control:max-age=3600 - 协商缓存
属性 描述 Last-Modified(上次修改的时间)
If-Modified-SinceLast-Modified:Wed, 26 Jan 2017 00:35:11 GMT Etag
If-None-MatchLast-Modified:Wed, 26 Jan 2017 00:35:11 GMT
-
- 使用CDN
- 预解析DNS
<meta http-equiv="x-dns-prefetch-control" content="no">
<link rel="dns-prefetch" href="//host_name_to_prefetch.com">