有效提高JavaScript执行效率的几点知识
为了提供新鲜、别致的用户体验,很多网站都会使用JavaScript来改善设计、验证表单、检查浏览器,以及Ajax请求,cookie操作等等,实现无刷新动态效果。但是,要将大量内容在浏览器呈现,如果处理不好,网站性能将会急剧下降。所以我们有必要了解下,如何提高JavaScript的执行效率。
JavaScript函数
在JavaScript中,函数在使用前会预编译。尽管有些时候下可以使用字符串代替函数,但是每次执行这段JavaScript代码时都会重新解析,影响性能。
1、eval例子
eval('output=(input*input)'); //建议改成: eval(newfunction(){output=(input*input)});
2、setTimeout例子
setTimeout("alert(1)",1000); //建议改成: setTimeout(function(){alert(1)},1000);
使用函数代替字符串作参数确保新方法中的代码能被JavaScript编译器优化。
JavaScript作用域
JavaScript作用域链中的每个作用域都包含几个变量。理解作用域链很重要,这样才能利用它。
varlocalVar="global";//全局变量
functiontest(){
varlocalVar="local";//局部变量
//局部变量 alert(localVar);
//全局变量 alert(this.localVar);
//查找document在局部变量找不到,就查找全局变量 varpageName=document.getElementById("pageName"); }