性能优化部分总结

1.Minimize HTTP Requests 减少http的请求

合并文件 雪碧图

2.Use a Content Delivery Network 利用CDN技术

CDN内容分发网络 必须有钱

把项目放在阿里云上,买一小块空间

3.Gzip Components Gzip压缩

减少了http请求的大小

自动化工具,边写代码边压缩

4.Put stylesheets at the top 把css放顶部

为了更快渲染页面

5.put script at the bottom 把js放底部

js阻塞加载,一条执行完才会执行另一条

自己的代码一般放顶部,别人的代码放底部

6.将css和js外链

7.Minify Javascript and css 减少js和css的体积

8.Avoid Redirect 避免重定向 每做一次重定向就是重新发送了一次请求

9.Remove Duplicate Scripts 删除重复的脚本

10.用get方式请求ajax,因为post要请求两次

11.Reduce the Number of DOM Elements 减少DOM元素数量 减少DOM操作,能用变量就用变量

12.No 404s 不要出现404页面

13.Reduce Cookie Size 减小cookie cookie特点:每次请求都有cookie

14.优化css,用雪碧图

15.不要在HTML中缩放图片 js重绘重排 css3只重绘

尽量使用css3的运动,减少重排

16.for-in 能用普通循环就用不for in循环(循环json和数组)

17.功能越强大消耗的性能就越高,所以能用Math.floor就不用parseInt,parseInt能字符串转数字,也取整

执行的性能:

1.少用定时器 打开另一个网页的时候 浏览器会改动定时器

2.尽量少操作DOM

3.多用变量(声明变量的时候尽量都写在最前面),预加载

4.尽量能用正则的就不用字符串方法(正则是操作字符串的底层语言)

5.闭包(没用的子函数,释放掉)

性能优化的题:斐波那契数列又称兔子数列,一般解题是

function fn(n){

if(n<=2){

return fn(n-1)+fn(n-2);

alert();括号里填想算的数字,这类方法是自己调用自己,递归,本身非常快,但咱们的重复的计算太多了,所以算的数越大时间越长。

所以我们通过吧递归转化为非递归求解的方式,用一个数组存储重复的数据,算出的速度就大大提高了。

var arr=[];

function fn(n){

if(n<=2){

return 1;

}else{

if(arr[n]){

return arr[n];

}else{

arr[n]=fn(n-1)+fn(n-2);

return arr[n];

}

}

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • <a name='html'>HTML</a> Doctype作用?标准模式与兼容模式各有什么区别? (1)、<...
    clark124阅读 3,554评论 1 19
  • 前端开发面试知识点大纲: HTML&CSS: 对Web标准的理解、浏览器内核差异、兼容性、hack、CSS基本功:...
    秀才JaneBook阅读 2,539评论 0 25
  • 前端面试题的简单整理,都只是大概回答,具体某些问题的具体理解后续会补上。 前端页面有哪三层构成,分别是什么?作用是...
    李欢li阅读 494评论 0 2
  • 本文转发自github, 原文地址 <a name='js'>JavaScript</a> 介绍js的基本数据类型...
    XDUZ阅读 1,063评论 1 11
  • 《好好生活》 令你痛苦的 不是生活 是生存 读万卷书不如行千里路 ...
    牧羊人c艾诺阅读 612评论 0 0