16-JavaScript-性能优化
页面性能
缓存分类
- 强缓存:直接拿来用的缓存
- Expires Expires:Thu, 21 Jan 2018 23:39:02 GMT (表示绝对时间,时间来自服务器,但是做比较的时候以本地浏览器的时间作为比较)
- Cache-Control Cache-Control:max-age = 3600(客户端相对时间)它的判断优先级高
- 协商缓存:本地有副本,但无法确实是否可以使用,需要询问服务器
- Last-Modified (服务端发过来修改时间)=== If-Modified-Since (通过这个Key值询问是否变化)
- Etag (哈希值,如果修改时间变了,但是内容没变通过对比Etag值来判断是否可以再用)
- If-None-Match是一个条件式请求首部。对于
GET
和 HEAD
请求方法来说,当且仅当服务器上没有任何资源的ETag
属性值与这个首部中列出的相匹配的时候,服务器端会才返回所请求的资源,响应码为 200 。对于其他方法来说,当且仅当最终确认没有已存在的资源的 ETag
属性值与这个首部中所列出的相匹配的时候,才会对请求进行相应的处理。