jscript,dhtml性能不能忘,欢迎同类文章
1.慎用eval
A.使用0s
for(var i = 0; i < 100;i++)
{
var ti2 = new Date()
}
B.使用15s
for(var i = 0; i < 100;i++)
{
var b =eval("new Date()")
}
2.注意document.all等集合对象的引用位置
A.使用31s
for(var i =0;i < 1000;i++)
{
document.all("test").value="test";
}
B.使用63s
var oAll = document.all;
for(var i =0;i < 1000;i++)
{
oAll("test").value="test";
}
3.减少下载次数,因为js会存于cache中,通过包含常用的组件从而减少下载时间
<script src="myfile.js"></script>
4.不要写冗余代码,30k的代码你要想到精简到20k或更少
5.限制使用动态属性(一个元素的属性修改时去修改另一个属性)--setExpression
6.建立一个 HTML 字符串并对文档进行一次更改,而不是进行多次更新
A.使用250s
divUpdate.innerHTML = "";
for ( var i=0; i<100; i++ )
{
divUpdate.innerHTML += "<SPAN>这是一个较慢的方法!</SPAN>";
}
B.使用0s
var str="";
for ( var i=0; i<100; i++ )
{
str += "<SPAN>因为使用字符串,此方法较快!</SPAN>";
}
divUpdate.innerHTML = str;
以上测试结果所处环境:cpu:p4 1.7,mem 256