gpt4 book ai didi

javascript - DRY - 创建表的循环

转载 作者:行者123 更新时间:2023-12-03 05:52:07 29 4
gpt4 key购买 nike

我将数据存储在数组中,并从该数组中使用循环创建表。对于一个表,我需要两列,另外 30 列(取决于数组项)。这将有三列。

var prodej = [
/*First column, second, third column*/
["Jack", 100, 101],
["Bkack", 100, 5],
["Duck", 100, 9],
];

这是我的循环

for ( var i = 0; prodej.length > i; i += 1) {
var tr = '<tr>'
var td1 = '<td>' + prodej[i][0]; + '</td>'
var td2 = '<td>' + prodej[i][1]; + '</td>'
var td3 = '<td>' + prodej[i][2]; + '</td>'
tr += td1 + td2 + td3 + '</tr>'
$("#firstTable").append(tr);
}

这是另一个数组和循环

var another = [

["Buick", 100],
["Ford", 100],
["Nissan", 100],
];

for ( var i = 0; another.length > i; i += 1) {
var tr = '<tr>'
var td1 = '<td>' + another[i][0]; + '</td>'
var td2 = '<td>' + another[i][1]; + '</td>'
tr += td1 + td2 + '</tr>'
$("#secondTable").append(tr);
}

我看到很多相同的代码,但我不知道如何才能只有一个循环。目标是

  • 获取内部数组的长度,并基于该长度在 tr 中创建相同的数字 td
  • 根据数组名称创建唯一 ID

最佳答案

您可以编写一个将数组和 id 作为参数的函数。使用嵌套循环来创建单元格。

function createTable(data, id) {
for (var i = 0; data.length > i; i += 1) {
var tr = '<tr>';
for (var j = 0; data[i].length > j; j += 1) {
tr += '<td>' + data[i][j]; + '</td>';
}
tr += '</tr>';
$("#" + id).append(tr);
}
}

然后当你想创建表时可以调用这个函数:

 createTable(prodej, 'firstTable');
createTable(another, 'secondTable');

关于javascript - DRY - 创建表的循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40103281/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com