如何在JS循环生成表格行时移除最后一行的<tr>标签?
如何在表格行循环中移除最后一行的
<tr>标签 你可以通过以下几种简单方式实现需求:
方法一:循环内判断是否为最后一个元素
直接在循环里检查当前索引是不是数组的最后一位,是的话只输出<td>标签,否则保留<tr>:
var data = ['A', 'B', 'C', 'D', 'E']; for(var i=0; i<data.length; i++) { var element = i === data.length - 1 ? `<td>${i}</td>` : `<td>${i}</td><tr>`; console.log(element); }
方法二:使用数组map生成元素列表
用map遍历数组,为每个元素生成对应的字符串,最后再逐个输出:
var data = ['A', 'B', 'C', 'D', 'E']; const elements = data.map((_, index) => { return `<td>${index}</td>` + (index !== data.length - 1 ? '<tr>' : ''); }); elements.forEach(item => console.log(item));
方法三:用join简化拼接(推荐)
先把所有<td>标签生成数组,再用<tr>作为分隔符拼接成字符串,这种方式不需要额外判断,代码更简洁:
var data = ['A', 'B', 'C', 'D', 'E']; const result = data.map((_, index) => `<td>${index}</td>`).join('<tr>'); console.log(result);
这种方式输出的结果完全符合你的需求:
<td>0</td><tr> <td>1</td><tr> <td>2</td><tr> <td>3</td><tr> <td>4</td>
内容的提问来源于stack exchange,提问作者HiDayurie Dave
相关产品推荐
相关产品推荐

