zoukankan      html  css  js  c++  java
  • 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

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

  • 相关阅读:
    中国科学院2021年硕转博考试分析试题参考解答
    蒲和平大学生数学竞赛教程答案5.1.3
    清华大学2021年数学推荐免试试题参考解答
    蒲和平大学生数学竞赛教程答案4.1.1
    兰州大学历年数学分析高等代数考研试题答案
    复旦大学2021年数学英才实验班选拔考试试题参考解答pdf
    北京大学2021年基础学科招生考试数学试题
    南开大学2021年数学伯苓班/复旦大学2021年数学英才实验班选拔考试试题
    实变函数与泛函分析第05次课:至1.5.2(请点阅读全文进课堂)
    中国科学技术大学2021年新生入学考试试题
  • 原文地址:https://www.cnblogs.com/deepbreath/p/5168279.html
Copyright © 2011-2022 走看看