优化javascript的执行速度


Posted in Javascript onJanuary 23, 2010

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);

Javascript 相关文章推荐
获取css样式表内样式的js函数currentStyle(IE),defaultView(FF)
Feb 14 Javascript
javascript 获取模态窗口的滚动位置代码
Aug 06 Javascript
JavaScript实现仿淘宝商品购买数量的增减效果
Jan 22 Javascript
使用node+vue.js实现SPA应用
Jan 28 Javascript
第一次接触神奇的Bootstrap基础排版
Jul 26 Javascript
JSON与XML的区别对比及案例应用
Nov 11 Javascript
微信小程序学习之数据处理详解
Jul 05 Javascript
浅谈JS获取元素的N种方法及其动静态讨论
Aug 25 Javascript
uni-app之APP和小程序微信授权方法
May 09 Javascript
Vue项目中使用better-scroll实现菜单映射功能方法
Sep 11 Javascript
js实现全选和全不选
Jul 28 Javascript
JavaScript实现九宫格拖拽效果
Jun 28 Javascript
window.onbeforeunload方法在IE下无法正常工作的解决办法
Jan 23 #Javascript
JQuery 1.4 中的Ajax问题
Jan 23 #Javascript
用JS写的一个TableView控件代码
Jan 23 #Javascript
JQuery 操作Javascript对象和数组的工具函数小结
Jan 22 #Javascript
JavaScript 学习笔记(十四) 正则表达式
Jan 22 #Javascript
JQuery.uploadify 上传文件插件的使用详解 for ASP.NET
Jan 22 #Javascript
JQuery 构建客户/服务分离的链接模型中Table中的排序分析
Jan 22 #Javascript
You might like
PHP序列号生成函数和字符串替换函数代码
2012/06/07 PHP
PHP数据类型之整数类型、浮点数的介绍
2013/04/28 PHP
PHP中substr_count()函数获取子字符串出现次数的方法
2016/01/07 PHP
PHP封装的MSSql操作类完整实例
2016/05/26 PHP
Jquery从头学起第四讲 jquery入门教程
2010/08/01 Javascript
jQuery EasyUI API 中文文档 可调整尺寸
2011/09/29 Javascript
jquery提交form表单时禁止重复提交的方法
2014/02/13 Javascript
Underscore.js 1.3.3 中文注释翻译说明
2015/06/25 Javascript
将JavaScript的jQuery库中表单转化为JSON对象的方法
2015/11/17 Javascript
jQuery购物网页经典制作案例
2016/08/19 Javascript
JavaScript队列、优先队列与循环队列
2016/11/14 Javascript
Vue.js系列之项目搭建(1)
2017/01/03 Javascript
微信小程序 实战实例开发流程详细介绍
2017/01/05 Javascript
bootstrap响应式表格实例详解
2017/05/15 Javascript
vue页面跳转后返回原页面初始位置方法
2018/02/11 Javascript
React 组件转 Vue 组件的命令写法
2018/02/28 Javascript
js中的reduce()函数讲解
2019/01/18 Javascript
Vue.js中的extend绑定节点并显示的方法
2019/06/20 Javascript
解决vuex数据页面刷新后初始化操作
2020/07/26 Javascript
js实现拖拽与碰撞检测
2020/09/18 Javascript
JavaScript 防盗链的原理以及破解方法
2020/12/29 Javascript
[43:43]完美世界DOTA2联赛PWL S2 FTD.C vs Rebirth 第一场 11.22
2020/11/24 DOTA
利用Django内置的认证视图实现用户密码重置功能详解
2017/11/24 Python
Python 实现一行输入多个值的方法
2018/04/21 Python
解决python nohup linux 后台运行输出的问题
2018/05/11 Python
Python键盘输入转换为列表的实例
2018/06/23 Python
使用PyCharm创建Django项目及基本配置详解
2018/10/24 Python
Python函数的返回值、匿名函数lambda、filter函数、map函数、reduce函数用法实例分析
2019/12/26 Python
python求一个字符串的所有排列的实现方法
2020/02/04 Python
在python下实现word2vec词向量训练与加载实例
2020/06/09 Python
如何使用Python处理HDF格式数据及可视化问题
2020/06/24 Python
太阳镜仓库,售价20美元或更少:Sunglass Warehouse
2016/09/28 全球购物
屈臣氏乌克兰:Watsons UA
2019/10/29 全球购物
如果NULL和0作为空指针常数是等价的,那我到底该用哪一个
2014/09/16 面试题
Internet主要有哪些网络群组成
2015/12/24 面试题
毕业论文指导教师评语
2014/12/30 职场文书