假设我有两个用于售票活动的数据数组。一是参加者:
[
{name: 'Jack', ticket_code: 'iGh4rT'},
{name: 'Lisa', ticket_code: 'it1ErB'}
]
另一个是门票:
[
{code: 'iGh4rT', name: 'General Admission'},
{code: 'it1ErB', name: 'VIP'}
]
现在说我想显示这样的表格:
姓名 | 票名 |
---|---|
杰克 | 一般入学 |
丽莎 | 贵宾 |
我正在努力有效地做到这一点。我可以用一个数组显示一张表,没有问题,如下所示:
for (let i = 0; i < attendees.length; i++){
const row = `<tr>
<td>${attendees[i].name}</td>
<td>${attendees[i].ticket_code}</td>
</tr>`
document.getElementById('TableBody').innerHTML += row
我需要以某种方式使用该特定人员的参加者数组中的代码“查询”票证数组,获取票证的名称,并替换票证名称而不是代码。
使用 SQL 这样的事情很容易,但是否能够“查询”数组并获得特定属性?我应该用所需的信息构建一个全新的数组吗?适用于大型无序数据集的最佳方法是什么?
尝试这个:
let a = [
{name: 'Jack', ticket_code: 'iGh4rT'},
{name: 'Lisa', ticket_code: 'it1ErB'}
];
let b = [
{code: 'iGh4rT', name: 'General Admission'},
{code: 'it1ErB', name: 'VIP'}
];
let c = b.map(item => {
return {
tiketName: item.name,
...a.find(itemA => itemA.ticket_code == item.code)
}
});
console.log(c);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句