优化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 相关文章推荐
FormValidate 表单验证功能代码更新并提供下载
Aug 23 Javascript
基于jquery的跨域调用文件
Nov 19 Javascript
div当滚动到页面顶部的时候固定在顶部实例代码
May 27 Javascript
js和php如何获取当前url的内容
Sep 22 Javascript
node.js中的console.log方法使用说明
Dec 09 Javascript
js友好的时间返回函数
Aug 24 Javascript
node.js中module.exports与exports用法上的区别
Sep 02 Javascript
vuex的简单使用教程
Feb 02 Javascript
详解vue文件中使用echarts.js的两种方式
Oct 18 Javascript
openLayer4实现动态改变标注图标
Aug 17 Javascript
webpack4从0搭建组件库的实现
Nov 29 Javascript
利用JavaScript写一个简单计算器
Nov 27 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/02/22 PHP
php中用date函数获取当前时间有误的解决办法
2013/08/02 PHP
Zend Framework教程之模型Model用法简单实例
2016/03/04 PHP
php 实现301重定向跳转实例代码
2016/07/18 PHP
PHP字符串逆序排列实现方法小结【strrev函数,二分法,循环法,递归法】
2017/01/13 PHP
PHP读取并输出XML文件数据的简单实现方法
2017/12/22 PHP
jquery prop的使用介绍及与attr的区别
2013/12/19 Javascript
windows8.1+iis8.5下安装node.js开发环境
2014/12/12 Javascript
AngularJS中使用HTML5手机摄像头拍照
2016/02/22 Javascript
JS从数组中随机取出几个数组元素的方法
2016/08/02 Javascript
Vue.js 和 MVVM 的注意事项
2016/11/07 Javascript
jQuery插件zTree实现单独选中根节点中第一个节点示例
2017/03/08 Javascript
Node.js设置CORS跨域请求中多域名白名单的方法
2017/03/28 Javascript
ES6新特性七:数组的扩充详解
2017/04/21 Javascript
Angular7.2.7路由使用初体验
2019/03/01 Javascript
微信小程序仿淘宝热搜词在搜索框中轮播功能
2020/01/21 Javascript
jquery检测上传文件大小示例
2020/04/26 jQuery
Vue中使用JsonView来展示Json树的实例代码
2020/11/16 Javascript
[47:52]完美世界DOTA2联赛PWL S2 PXG vs InkIce 第二场 11.26
2020/11/30 DOTA
python实现逻辑回归的方法示例
2017/05/02 Python
Python将list中的string批量转化成int/float的方法
2018/06/26 Python
python3 爬取图片的实例代码
2018/11/06 Python
Python Threading 线程/互斥锁/死锁/GIL锁
2019/07/21 Python
wxPython实现分隔窗口
2019/11/19 Python
python绘制玫瑰的实现代码
2020/03/02 Python
Python控制台实现交互式环境执行
2020/06/09 Python
利用scikitlearn画ROC曲线实例
2020/07/02 Python
受希腊女神灵感的晚礼服、鸡尾酒礼服和婚纱:THEIA
2018/04/15 全球购物
自我鉴定范文200字
2013/10/02 职场文书
竞选学生会演讲稿
2014/04/25 职场文书
2015年村党支部工作总结
2015/04/30 职场文书
幼儿园安全教育随笔
2015/08/14 职场文书
SQL Server连接查询的实用教程
2021/04/07 SQL Server
python用海龟绘图写贪吃蛇游戏
2021/06/18 Python
vue @click.native 绑定原生点击事件
2022/04/22 Vue.js
Android开发之底部导航栏的快速实现
2022/04/28 Java/Android