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. 这一篇 K8S(Kubernetes)集群部署 我觉得还可以!!!

    点赞再看,养成习惯,微信搜索[牧小农]关注我获取更多资讯,风里雨里,小农等你,很高兴能够成为你的朋友. 国内安装K8S的四种途径 Kubernetes 的安装其实并不复杂,因为Kubernetes 属 ...

  2. spark搭建

    1.上传解压,配置环境变量 配置bin目录 2.修改配置文件 conf cp spark-env.sh.template spark-env.sh 增加配置 export SPARK_MASTER_I ...

  3. js事件常用操作、事件流

    注册事件 给元素添加事件,称为注册事件或者绑定事件. 注册事件有两种方式:传统方式和方法监听注册方式 传统方式 on开头的事件,例如onclick <button onclick="a ...

  4. 2021中国能源网络信息安全大赛wp

    FROM TEAM BINX Web ezphp CODE 将base64解了之后得到: $O0O000="rFqQmguebyiVTBwlWAJYRhsHXfpojxEndNGkZICDL ...

  5. RocketMQ源码详解 | Consumer篇 · 其一:消息的 Pull 和 Push

    概述 当消息被存储后,消费者就会将其消费. 这句话简要的概述了一条消息的最总去向,也引出了本文将讨论的问题: 消息什么时候才对被消费者可见? 是在 page cache 中吗?还是在落盘后?还是像 K ...

  6. WebSocket实现简易的FTP客户端

    WebScoket的简单应用,实现一个简易的FTP,即文件上传下载,可以查看上传人,下载次数,打开多个Web可以多人上传. 说在前面的话 文件传输协议(File Transfer Protocol,F ...

  7. Typora下载安装教程

    Typoa下载和安装 Typora---程序员记事本!!! 这里我们选择Typora作为我们的编辑器,功能的强大需要各位自己去体会. Typora下载地址 点击链接打开,然后选择Download! 根 ...

  8. Python 全局变量和局部变量,global 和 nonlocal关键字

    全局变量和局部变量    全局变量:定义在函数外的变量    局部变量:定义在函数内部变量    获取变量值时候先获取当前作用域变量名称和变量值,如果没找到到上一层作用域招变量的值,在没有就报错,先获 ...

  9. 菜鸡的Java笔记第二 - java 数据类型

    1.程序的本质实际上就是在于数据的处理上. JAVA中的数据类型有两类 基本数据类型:是进行内容的操作而不是内存的操作 数值型: 整型:byte(-128 ~ 127),short(-32768 ~ ...

  10. Semaphore信号量的使用

    package ThreadTest; import java.util.concurrent.Semaphore; import java.util.concurrent.TimeUnit; pub ...