1. <html xmlns="http://www.w3.org/1999/xhtml">
  2. <head runat="server">
  3. <title>for与each性能比较</title>
  4. <script src="../Cks/jquery-1.7.1.min.js" type="text/javascript"></script>
  5. <script type="text/javascript" language="javascript">
  6. function getSelectLength() {
  7. var time1 = new Date().getTime();
  8. var len = $("#select_test").find("option").length;
  9. var selectObj = $("#select_test");
  10. for (var i = 0; i < len; i++) {
  11. if (selectObj.get(0).options[i].text == "111111") {
  12. selectObj.get(0).options[i].selected = true;
  13. break;
  14. }
  15. }
  16. var time2 = new Date().getTime();
  17. alert("for循环执行时间:" + (time2 - time1));
  18. time1 = new Date().getTime();
  19. $("#select_test").find("option").each(function () {
  20. if ($(this).text() == "111111") {
  21. $(this)[0].selected = true;
  22. }
  23. });
  24. time2 = new Date().getTime();
  25. alert("each循环执行时间:" + (time2 - time1));
  26. }
  27. </script>
  28. </head>
  29. <body>
  30. <form id="form1" runat="server">
  31. <div><select id="select_test">
  32. <option value='1'>111111</option>
  33. <option value='2'>222222</option>
  34. <option value='3'>333333</option>
  35. <option value='4'>444444</option>
  36. <option value='5'>5</option>
  37. <option value='6'>6</option>
  38. <option value='7'>7</option>
  39. <option value='8'>8</option>
  40. <option value='9'>9</option>
  41. <option value='10'>10</option>
  42. <option value='11'>11</option>
  43. <option value='12'>12</option>
  44. <option value='13'>13</option>
  45. <option value='14'>14</option>
  46. <option value='15'>15</option>
  47. <option value='16'>16</option>
  48. <option value='17'>17</option>
  49. <option value='18'>18</option>
  50. <option value='19'>19</option>
  51. <option value='20'>20</option>
  52. </select><input type="button" value="开始比较" onclick="getSelectLength();" /></div>
  53. <div>
  54. </form>
  55. </body>
  56. </html>

输入出入:

for循环执行时间:1
each循环执行时间:3

两次结果直接说明了问题。

jquery的each和js原生for循环性能对比的更多相关文章

  1. jquery $(document).ready() 与js原生的window.onload的区别总结

    Jquery中$(document).ready()的作用类似于传统JavaScript中的window.onload方法,不过与window.onload方法还是有区别的. 1.执行时间       ...

  2. 仿jQuery的siblings效果的js原生代码

    仿jQuery的siblings效果的js原生代码 <previousSibling> 属性返回选定节点的上一个同级节点(在相同树层级中的前一个节点). <nextSibling&g ...

  3. js原生的url操作函数,及使用方法。(附:下边还有jquery对url里的中文解码函数)

    js原生的url操作函数,完善的. /*****************************/ /* 动态修改url */ /*****************************/ var ...

  4. 图片轮播(左右切换)--JS原生和jQuery实现

    图片轮播(左右切换)--js原生和jquery实现 左右切换的做法基本步骤跟 上一篇文章  淡入淡出 类似,只不过修改了一些特定的部分 (1)首先是页面的结构部分 对于我这种左右切换式 1.首先是个外 ...

  5. 图片轮播(淡入淡出)--JS原生和jQuery实现

    图片轮播(淡入淡出)--js原生和jquery实现 图片轮播有很多种方式,这里采用其中的 淡入淡出形式 js原生和jQuery都可以实现,jquery因为封装了很多用法,所以用起来就简单许多,转换成j ...

  6. js原生 + jQuery实现页面滚动字幕

    js原生/jQuery实现页面滚动字幕效果 17:45:49 在新闻列表或者文章列表信息等页面中很容易要求实现字幕滚动的效果,以下为简单的实现页面中滚动字幕的效果 1.jQuery实现页面滚动字幕效果 ...

  7. JS原生Ajax&Jquery的Ajax技术&Json

    1.介绍Ajax Ajax = 异步 JavaScript 和 XML Ajax是一种创建快速动态网页的技术 通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新.这意味着可以不用整个 ...

  8. 认识JQuery,JQuery的优势、语法、多库冲突、JS原生对象和JQuery对象之间相互转换和DOM操作,常用的方法

    (一)认识JQuery  JQuery是一个JavaScript库,它通过封装原生的JavaScript函数得到一套定义好的方法    JQuery的主旨:以更少的代码,实现更多的功能 (二)JQue ...

  9. 使用jQuery.makeArray() 将多种类型转换成JS原生Array

    jQuery.makeArray(obj)这个函数从名字上来看非常easy猜出它的用途:应该是用来将传入的对象转换成一个原生array 再看看官网上对它的解释:Convert an array-lik ...

随机推荐

  1. 【PowereDesigner】使用方法|mysql画图使用|不在跟新

    自己画E-R图时, 运行:Power Designer ..1 ..2 ..3 可以先放两个空的实体,然后,分别修改属性(鼠标右键,最后一项Properties),名称为:学生.课程. ..4 创建一 ...

  2. mybatis-plus查询指定字段

    show me the code :mybais-plus版本:3.1.1 1,排除某些字段,可以同时排除多个字段排除多个字段写法: .setEntity(new User()) .select(c ...

  3. 1. 处理静态资源 2. controller如何接受请求得参数 3. 如何把controller得数据保存到view. 4. 在controller如何完成重定向到指定路径 5. controller返回json数据

    1. 1. 处理静态资源2. controller如何接受请求得参数3. 如何把controller得数据保存到view.4. 在controller如何完成重定向到指定路径5. controller ...

  4. 暑假算法练习Day5

    咕咕了好几天哈哈哈哈,因为这几天在忙一些其他事(bushi ,好吧其实就是自己太懒啦,从今天开始继续每天的算法练习 1010 一元多项式求导 (25 分) 设计函数求一元多项式的导数.(注:\(x^n ...

  5. webpack 项目接入Vite的通用方案介绍(上)

    愿景 希望通过本文,能给读者提供一个存/增量项目接入Vite的点子,起抛砖引玉的作用,减少这方面能力的建设成本 在阐述过程中同时也会逐渐完善webpack-vite-serve这个工具 读者可直接fo ...

  6. 基于nexus私服配置项目pom.xml和maven settings.xml文件

    备注:搭建nexus私服请参考上一篇文章基于Docker搭建Maven私服Nexus,Nexus详解 一:将jar发送到nexus私服务器 1.pom.xml文件添加配置 pom.xml文件中的这个版 ...

  7. AtCoder Beginner Contest 188题解

    A 题意 问\(x,y\)相差是否小于\(3\) #include<iostream> #include<cstdio> #include<cmath> #defi ...

  8. 洛谷 P3239 [HNOI2015]亚瑟王(期望+dp)

    题面传送门 感觉是道挺好的题,可惜当时没写题解来着的? 根据期望的线性公式,我们求出每个卡牌被发动的概率 \(q_i\),然后 \[ans=\sum\limits_{i=1}^np_id_i \] 于 ...

  9. 《python编程从入门到实践》读书实践笔记(一)

    本文是<python编程从入门到实践>读书实践笔记1~10章的内容,主要包含安装.基础类型.函数.类.文件读写及异常的内容. 1 起步 1.1 搭建环境 1.1.1 Python 版本选择 ...

  10. Python使用print打印时,展示内容不换行

    原理 Python的print()函数中参数end='' 默认为\n,所以会自动换行; 默认的print()函数: print(end='\n') 方案 Python 2: 在print语句的末尾加上 ...