Summary 总结
*在javascript中,数据储存的位置可以对代码的整体性能产生重要的影响。主要数据类型有四种:直接量,变量,数组项,对象成员;他们有不同的性能考虑。
1:访问直接量和局部变量的速度非常快,相反,访问数组项和对象成员需要更长的时间;
所以我们尽量的用局部变量来替代全局变量;因为局部变量存在与作用域链的起始位置,因此访问局部变量比访问跨作用域变量更快。变量在作用域越深,访问的时间就越长。由于全局变量总是处于作用域的最末端,因此访问的速度也是最慢的。
functioninitUI(){
var bd=document.body,
//var doc=document,bd = doc.body
//(用此处代码替代var bd=document.body)
links= document.getElementsByTagName_r("a"),
i= 0,
len= links.length;
while(i< len){
update(links[i++]);
}document.getElementById("go-btn").onclick =function(){
start();
};
bd.className = "active";
}
2 .避免使用with语句,因为它会改变执行的环境作用域链。同样的,try—catch语句中的catch子句也有同样的影响,因此也要小心的使用;
3.嵌套的对象成员会明显的影响性能,尽量少用;
4.属性或者方法在原型链中的位置越深,访问他的速度越慢;
5.通常来说,你可以吧常用的对象成员,数组元素,跨域变量的保存在变量中来改善javascript的性能,因为局部变量的访问速度快;