• jquery的each和js原生for循环性能对比


    [html] view plain copy
     
    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.         }  
    28.     </script>  
    29. </head>  
    30. <body>  
    31.     <form id="form1" runat="server">  
    32.     <div><select id="select_test">  
    33.     <option value='1'>111111</option>  
    34.     <option value='2'>222222</option>  
    35.     <option value='3'>333333</option>  
    36.     <option value='4'>444444</option>  
    37.     <option value='5'>5</option>  
    38.     <option value='6'>6</option>  
    39.     <option value='7'>7</option>  
    40.     <option value='8'>8</option>  
    41.     <option value='9'>9</option>  
    42.     <option value='10'>10</option>  
    43.     <option value='11'>11</option>  
    44.     <option value='12'>12</option>  
    45.     <option value='13'>13</option>  
    46.     <option value='14'>14</option>  
    47.     <option value='15'>15</option>  
    48.     <option value='16'>16</option>  
    49.     <option value='17'>17</option>  
    50.     <option value='18'>18</option>  
    51.     <option value='19'>19</option>  
    52.     <option value='20'>20</option>  
    53.     </select><input type="button" value="开始比较" onclick="getSelectLength();" /></div>  
    54.     <div>  
    55.     </form>  
    56. </body>  
    57. </html>  

    输入出入:

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

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

  • 相关阅读:
    Jquery简略API使用
    JS全部API笔记
    实现nginx的负载均衡和反向代理
    HashMap在Java1.7与1.8中的区别
    数据库设计三大范式
    Java集合
    Object类有哪些方法
    spring mvc出现 Failed to convert property value of type 'java.lang.String' to required type 'java.util.Date' for property 'endtime'
    int和Integer的区别
    第二次面试-科大讯飞(卒)
  • 原文地址:https://www.cnblogs.com/deepbreath/p/5168279.html
Copyright © 2020-2023  润新知