生命不息,学习不止

面试题汇总 – 前端性能优化

  1. 尽量减少HTTP请求次数
    压缩合并js
    css精灵
    内联图片。src用data:url scheme
  2. 减少DNS查询
    有的内容资源都放在同一个域(Domain)下面,这样访问整个网站就只需要进行一次DNS查找,这样可以提高性能
    由于这些资源都在同一个域,而HTTP /1.1 中推荐客户端针对每个域只有一定数量的并行度(它的建议是2),那么就会出现下载资源时的排队现象
    建议在一个网站里面使用至少2个域,但不多于4个域来提供资源
  3. 使用CDN
    网站上静态资源即css、js全都使用cdn分发,图片亦然,因为cdn拥有众多服务器,用户请求可以请求距离他近的服务器,加快速度
  4. 避免空的src和href
  5. 为文件头指定Expires(过期时间)或者Cache-Control头部。
  6. 使用gzip压缩内容(服务端)
  7. 把CSS放到顶部
  8. 把JS放到底部
  9. 避免使用CSS表达式
  10. 将CSS和JS放到外部文件中
  11. 可缓存的AJAX异步请求同样的造成用户等待,所以使用ajax请求时,要主动告诉浏览器如果该请求有缓存就去请求缓存内容。如下代码片段,
    $.ajax({
    url: ‘url’,
    dataType: “json”,
    cache: true, //如果有缓存请求缓存
    success: function(son, status) {}
    })
  12. 使用GET来完成AJAX请求
    POST方法:首先发送文件头,然后才发送数据
  13. 减少DOM元素数量
  14. 不要404。
    所以发出http请求但获得没用的响应(如404)是完全不必要的,并且会降低用户体验,这样首先会降低(占用)并行下载数
    如果有404状态码 在此页面展示404样式,不是直接跳转到404页面
  15. 不要在html中缩放图片
赞(1)
未经允许不得转载:Mxue note » 面试题汇总 – 前端性能优化