【发布时间】:2018-01-28 09:07:41
【问题描述】:
我的代码下面使用 each() 实际上可以很好地工作,但是使用 for 循环是否比使用 each() 更好?使用 for 循环将减少与 each() 相比的时间负载; ?因为将来我仍然会为数据类型添加更多..意味着不仅c1,c2,还会有更多类型即将到来,
我的html,
<div class ="box red" data-type="c1" data-title="c1 content" id="cp-1">
<div class= "title">c1 content</div>
</div>
<div class ="box green" data-type="c1" data-title="c2 content" id="cp-2">
<div class= "title">c2 content</div>
</div>
javascript:
$(document).ready(function() {
var cp = $('.box');
// Unique Id for each
var idCp = 0;
for (var i = 0; i < cp.length; i++)
{
idCp++;
cp[i].id = "cp-" + idCp;
}
cp.each(function() {
var cp = $(this);
var cpTitle = cp.attr("data-title") + "";
// different Data type
if (cp.data('type') == "c1")
{
cp.addClass('red').css(
{
"background-color" : "red",
"padding": "20px",
"display": "table"}
);
cp.append('<div class="title">' + cpTitle + '</div>');
}
else if (cp.data('type') == "c2")
{
cp.addClass('green').css(
{
"background-color" : "green",
"padding": "20px",
"display": "table"}
);
cp.append('<div class="title">'+ cpTitle + '</div>');
} else {
return false;
}
});
});
【问题讨论】:
-
如果它们的可读性相同,
for应该更快。
标签: javascript html