JQuery for與each性能比較分析
更新時間:2013年05月14日 18:04:11 作者:
性能優(yōu)化遇到很多細節(jié)問題(for與each性能比較)記錄下來分享給大家,希望對你有所幫助
最近在做一個性能優(yōu)化方面的工作,遇到很多細節(jié)問題,現(xiàn)在一一把遇到的問題記錄下來分享給大家,廢話就不多謝,我直接貼代碼。
<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循環(huán)執(zhí)行時間:" + (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循環(huán)執(zhí)行時間:" + (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循環(huán)執(zhí)行時間:1
each循環(huán)執(zhí)行時間:3
兩次結(jié)果直接說明了問題。
復制代碼 代碼如下:
<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循環(huán)執(zhí)行時間:" + (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循環(huán)執(zhí)行時間:" + (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循環(huán)執(zhí)行時間:1
each循環(huán)執(zhí)行時間:3
兩次結(jié)果直接說明了問題。
相關文章
使用easyui從servlet傳遞json數(shù)據(jù)到前端頁面的兩種方法
這篇文章主要介紹了用easyui從servlet傳遞json數(shù)據(jù)到前端頁面的兩種方法,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-09-09
jQuery常用事件方法mouseenter+mouseleave+hover
這篇文章主要介紹了jQuery常用事件方法mouseenter、mouseleave和hover方法,下文內(nèi)容介紹詳細,需要的小伙伴可以參考一下2022-03-03
jQuery使用zTree插件實現(xiàn)可拖拽的樹示例
本篇文章主要介紹了js使用zTree插件實現(xiàn)可拖拽的樹示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-09-09
jquery插件jquery.LightBox.js實現(xiàn)點擊放大圖片并左右點擊切換效果(附demo源碼下載)
這篇文章主要介紹了jquery插件jquery.LightBox.js實現(xiàn)點擊放大圖片并左右點擊切換效果,可實現(xiàn)仿相冊插件切換效果,并附代碼demo源碼供讀者下載參考,需要的朋友可以參考下2016-02-02

