JQuery for与each性能比较分析


Posted in Javascript onMay 14, 2013

最近在做一个性能优化方面的工作,遇到很多细节问题,现在一一把遇到的问题记录下来分享给大家,废话就不多谢,我直接贴代码。

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<title>for与each性能比较</title> 
<script src="../Cks/jquery-1.7.1.min.js" type="text/javascript"></script> 
<script type="text/javascript" language="javascript"> 
function getSelectLength() { 
var time1 = new Date().getTime(); 
var len = $("#select_test").find("option").length; 
var selectObj = $("#select_test"); 
for (var i = 0; i < len; i++) { 
if (selectObj.get(0).options[i].text == "111111") { 
selectObj.get(0).options[i].selected = true; 
break; 
} 
} 
var time2 = new Date().getTime(); 
alert("for循环执行时间:" + (time2 - time1)); 
time1 = new Date().getTime(); 
$("#select_test").find("option").each(function () { 
if ($(this).text() == "111111") { 
$(this)[0].selected = true; 
} 
}); 
time2 = new Date().getTime(); 
alert("each循环执行时间:" + (time2 - time1)); 
} 
</script> 
</head> 
<body> 
<form id="form1" runat="server"> 
<div><select id="select_test"> 
<option value='1'>111111</option> 
<option value='2'>222222</option> 
<option value='3'>333333</option> 
<option value='4'>444444</option> 
<option value='5'>5</option> 
<option value='6'>6</option> 
<option value='7'>7</option> 
<option value='8'>8</option> 
<option value='9'>9</option> 
<option value='10'>10</option> 
<option value='11'>11</option> 
<option value='12'>12</option> 
<option value='13'>13</option> 
<option value='14'>14</option> 
<option value='15'>15</option> 
<option value='16'>16</option> 
<option value='17'>17</option> 
<option value='18'>18</option> 
<option value='19'>19</option> 
<option value='20'>20</option> 
</select><input type="button" value="开始比较" onclick="getSelectLength();" /></div> 
<div> 
</form> 
</body> 
</html>

输入出入
for循环执行时间:1
each循环执行时间:3
两次结果直接说明了问题。
Javascript 相关文章推荐
SWFObject Flash js调用类
Jul 08 Javascript
javaScript 关闭浏览器 (不弹出提示框)
Jan 31 Javascript
JQuery对表单元素的基本操作使用总结
Jul 18 Javascript
JS、CSS以及img对DOMContentLoaded事件的影响
Aug 12 Javascript
IE及IE6浏览器中判断JS文件加载成功失败的方法
Feb 18 Javascript
JavaScript常用脚本汇总(三)
Mar 04 Javascript
jQuery给指定的table动态添加删除行的操作方法
Oct 12 Javascript
Angularjs 与 bower安装和使用详解
May 11 Javascript
js图片上传的封装代码
Aug 01 Javascript
使用 Node.js 模拟滑动拼图验证码操作的示例代码
Nov 02 Javascript
详解js访问对象的属性和方法
Oct 25 Javascript
JSON字符串操作移除空串更改key/value的介绍
Jan 05 Javascript
禁用键盘上的(全局)指定键兼容iE、Chrome、火狐
May 14 #Javascript
解析使用js判断只能输入数字、字母等验证的方法(总结)
May 14 #Javascript
使用js检测浏览器的实现代码
May 14 #Javascript
Javascript 垃圾收集机制介绍理解
May 14 #Javascript
JavaScript实现GriwView单列全选(自写代码)
May 13 #Javascript
jquery实现漂浮在网页右侧的qq在线客服插件示例
May 13 #Javascript
js 程序执行与顺序实现详解
May 13 #Javascript
You might like
php获取域名的google收录示例
2014/03/24 PHP
非集成环境的php运行环境(Apache配置、Mysql)搭建安装图文教程
2016/04/12 PHP
php实现在线通讯录功能(附源码)
2016/05/13 PHP
PHP实现RTX发送消息提醒的实例代码
2017/01/03 PHP
extjs 学习笔记(三) 最基本的grid
2009/10/15 Javascript
jquery下操作HTML控件的实现代码
2010/01/12 Javascript
jquery 模拟类搜索框自动完成搜索提示功能(改进)
2010/05/24 Javascript
非常有用的40款jQuery 插件推荐(系列二)
2011/12/25 Javascript
Javascript玩转继承(二)
2014/05/08 Javascript
webapp框架AngularUI的demo改造之路
2014/12/21 Javascript
jQuery中parentsUntil()方法用法实例
2015/01/07 Javascript
JS实现转动随机数抽奖特效代码
2020/04/16 Javascript
详解JavaScript函数
2015/12/01 Javascript
javascript 秒表计时器实现代码
2017/03/09 Javascript
NodeJs测试框架Mocha的安装与使用
2017/03/28 NodeJs
JS实现匀加速与匀减速运动的方法示例
2017/09/04 Javascript
vue2中使用less简易教程
2018/03/27 Javascript
vue axios整合使用全攻略
2018/05/24 Javascript
axios向后台传递数组作为参数的方法
2018/08/11 Javascript
jQuery实现的点击图片居中放大缩小功能示例
2019/01/16 jQuery
vue工程全局设置ajax的等待动效的方法
2019/02/22 Javascript
Vue实现商品分类菜单数量提示功能
2019/07/26 Javascript
JavaScript页面加载事件实例讲解
2019/09/01 Javascript
分享Angular http interceptors 拦截器使用(推荐)
2019/11/10 Javascript
vue项目在线上服务器访问失败原因分析
2020/08/14 Javascript
Python yield使用方法示例
2013/12/04 Python
python使用marshal模块序列化实例
2014/09/25 Python
Python Pandas批量读取csv文件到dataframe的方法
2018/10/08 Python
解决python3运行selenium下HTMLTestRunner报错的问题
2018/12/27 Python
煤矿安全生产月活动总结
2014/07/05 职场文书
2014年妇产科工作总结
2014/12/08 职场文书
施工单位工程部经理岗位职责
2015/04/09 职场文书
2015年加油站工作总结
2015/05/13 职场文书
2015年学校精神文明工作总结
2015/05/27 职场文书
sql中mod()函数取余数的用法
2021/05/29 SQL Server
再次探讨go实现无限 buffer 的 channel方法
2021/06/13 Golang