优化javascript的执行速度
作者:bea
1:修改循环的执行方式 for(var i=0;i<element.childNodes.length;i++){ 执行代码 } 这种方式每次循环都要取element.childNodes.length的值,应该改为如下的 var n=element.childNodes.length for(var i=0;i<n;i++){ 执行代码 } 2:修改dom操作的次数 dom批量插入一批类似的节点不如先构造一个对象,插入一次 比如下面这种方法就是合理的: var
1:修改循环的执行方式
for(var i=0;i<element.childNodes.length;i++){
执行代码
}
这种方式每次循环都要取element.childNodes.length的值,应该改为如下的
var n=element.childNodes.length
for(var i=0;i<n;i++){
执行代码
}
2:修改dom操作的次数
dom批量插入一批类似的节点不如先构造一个对象,插入一次
比如下面这种方法就是合理的:
var div=document.createElement("div");
for(var i=0;i<10;i++)[
var element=document.createElement("a");
a.href="";
div.appendChild(element);
}
//构建好对象后一次插入
document.body.appendChild(div);
3:减少对象的引用层次,可以减少浏览器对对象解析的复杂度
比如一个方法为 net.Loader.LoadXml(params)
不必每次都这么使用,可以
var loadXml=net.Loader.LoadXml;
loadXml(params);
有用 |
无用
for(var i=0;i<element.childNodes.length;i++){
执行代码
}
这种方式每次循环都要取element.childNodes.length的值,应该改为如下的
var n=element.childNodes.length
for(var i=0;i<n;i++){
执行代码
}
2:修改dom操作的次数
dom批量插入一批类似的节点不如先构造一个对象,插入一次
比如下面这种方法就是合理的:
var div=document.createElement("div");
for(var i=0;i<10;i++)[
var element=document.createElement("a");
a.href="";
div.appendChild(element);
}
//构建好对象后一次插入
document.body.appendChild(div);
3:减少对象的引用层次,可以减少浏览器对对象解析的复杂度
比如一个方法为 net.Loader.LoadXml(params)
不必每次都这么使用,可以
var loadXml=net.Loader.LoadXml;
loadXml(params);
猜你喜欢
您可能感兴趣的文章:
- 使用JQuery进行跨域请求
- JavaScript 使用简略语法创建对象的代码
- javascript 的Document属性和方法集合
- 起点页面传值js,有空研究学习下
- javascript 自动标记来自搜索结果页的关键字
- js 多层叠的TAB选项卡
- javascript 三种数组复制方法的性能对比
- javascript下一种表单元素获取方法存在的问题
- js 巧妙去除数组中的重复项
- javascript 删除数组中重复项(uniq)
- 将函数的实际参数转换成数组的方法
- jQuery中isFunction方法的BUG修复
- javascript中利用数组实现的循环队列代码
- document.getElementById为空或不是对象的解决方法
- JavaScript 未结束的字符串常量常见解决方法
- php gethostbyname获取域名ip地址函数详解
- setTimeout与setInterval在不同浏览器下的差异
- js 模拟实现类似c#下的hashtable的简单功能代码
- jQuery 1.4 15个你应该知道的新特性(译)