前端js性能优化总结

前端js性能优化总结

从代码书写效率和宏观的部署等两个方向进行总结。

1、代码效率

变量使用优化

声明对象和数组使用字面量,如varnewarray=[];varnewobject={varp1:''t';vatf1:function(){}}

Js寻找变量使用变量作用域链,如果常常使用的在外层作用域的可以使用临时变量代替。

For(){

tododocument.body

}

写成

vartbody=document.body;

For(){

todotbody

}

不用with

For优化使用倒序循环for(vari=length;i——;)i减为零自动为false,减少一个判断

Dom使用优化

将集合的length缓存在一个中间变量,一方面是访问更快,另外集合被改变length也会跟着变。

dom使用优化也是尽量将重复使用的变量使用中间变量,

避免重复的重绘和重排版

使用事件委托技术最小化事件句柄数量

HTMLcollect中的length是不断去访问的,而且循环改变也同时被改变

UI进程优化

页面现实和js解析是使用同一个ui进程,所以脚本的运行时间需要尽量控制在100ms之内,如果时间太长,将程序拆分使用settimeOut

在html5下也可以使用workers

其他:

不用eval,在setTimeOut、setInterval和Function中也不要用类似eval的功能,尽量使用原生方法。

2、代码位置和部署

为了避免js阻塞,一般js放到页面最后。压缩js。合并js。使用cdn。

3、工具篇

Yslow

Pagespeed

http://www.cleancss.com/

相关推荐