zoukankan      html  css  js  c++  java
  • 循环执行时间JQuery 性能分析系列一 —— for与each性能比较

    近来研究循环执行时间,稍微总结一下,以后继续补充:

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

        每日一道理
    心的本色该是如此。成,如朗月照花,深潭微澜,不论顺逆,不论成败的超然,是扬鞭策马,登高临远的驿站;败,仍滴水穿石,汇流入海,有穷且益坚,不坠青云的傲岸,有“将相本无主,男儿当自强”的倔强。荣,江山依旧,风采犹然,恰沧海巫山,熟视岁月如流,浮华万千,不屑过眼烟云;辱,胯下韩信,雪底苍松,宛若羽化之仙,知退一步,海阔天空,不肯因噎废食。
    <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

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

    文章结束给大家分享下程序员的一些笑话语录: 警告
    有一个小伙子在一个办公大楼的门口抽着烟,一个妇女路过他身边,并对他 说, “你知道不知道这个东西会危害你的健康?我是说, 你有没有注意到香烟 盒上的那个警告(Warning)?”
    小伙子说,“没事儿,我是一个程序员”。
    那妇女说,“这又怎样?”
    程序员说,“我们从来不关心 Warning,只关心 Error”

  • 相关阅读:
    mysql 修改表
    mac下安装MySQL 5.7
    win&linux下path中%%与$ 以及;与:区别,
    PATH
    转 path设置方式
    MyEclipse乱码问题
    03 最大的数据库 information_schema介绍以及sql注入第一题题解
    02.mysql数据库 基本命令
    01.Windows进入MySQL数据库
    Web web4
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3078460.html
Copyright © 2011-2022 走看看