我有一个for循环,如果它们通过某个条件就会将项目推送到数组中。然后我输出其各自数组的每个项目,以便它在表结构的迭代中显示:
var row = "";
var CatNum = [];
var Org = [];
var tooltip = {
cat1: '',
cat2: ''
};
for循环:
for (var i = 0; i < data.length; i++)
{
if (data[i].catType === 'I')
{
CatNum.push(data[i].catNum);
Org.push(data[i].org);
trackingNumber.push(data[i].trackingNumber)
row = '<tr>' +
'<td class="tooltip-Val">' + <NUMERICAL ORDER HERE:> + Org[i] + '</td>' +
'</tr>';
tooltip.cat1 = tooltip.cat1.concat(row);
}
else if (data[i].catType === 'II')
{
CatNum.push(data[i].catNum);
Org.push(data[i].org);
trackingNumber.push(data[i].trackingNumber);
row = '<tr>' +
'<td class="tooltip-Val">' + <NUMERICAL ORDER HERE:> + Org[i] + '</td>' +
'</tr>';
tooltip.cat2 = tooltip.cat2.concat(row);
}
我想做的是按数字顺序对每次迭代进行排序。
现在我没有一种方法可以为每个打印的循环编号。 我的目标是让HTML打印如下:
CATI :
1. xxxxx
2. xxxxx
3. xxxxx
CATII :
1. yyyyy
2. yyyyy
有关最佳方法的任何想法吗?
答案 0 :(得分:2)
如果0
或if
条件为else if
true
的增量变量
for (var i = 0, cat 1 = 0, cat2 = 0; i < data.length; i++) {
if (data[i].catType === 'I') {
CatNum.push(data[i].catNum);
Org.push(data[i].org);
trackingNumber.push(data[i].trackingNumber)
row = '<tr>'
// increment `cat1`
+ '<td class="tooltip-Val">' + (++cat1) + Org[i] + '</td>'
+ '</tr>';
tooltip.cat1 = tooltip.cat1.concat(row);
} else if (data[i].catType === 'II') {
CatNum.push(data[i].catNum);
Org.push(data[i].org);
trackingNumber.push(data[i].trackingNumber);
// increment `cat2`
row = '<tr>' + '<td class="tooltip-Val">' + (++cat2) + Org[i]
+ '</td>'
+ '</tr>';
tooltip.cat2 = tooltip.cat2.concat(row);
}
}
答案 1 :(得分:0)
只需添加两个变量即可跟踪计数,例如
var indexOne = 1, indextwo = 1;
for (var i = 0; i < data.length; i++) { ...
并分别用<NUMERICAL ORDER HERE:>
和indexOne++
替换indextwo++
。