我只是通过使用下面的代码行在JavaScript中创建了两个Map。
let myMap = new Map();
let myMap1 = new Map();
我只是在相应的Map中添加了以下数据。
//下面只是举例和实际不一样
myMap1 = new Map([
['country', 'Chile'],
['age', 30],
]);
myMap = new Map([
['country', 'Austria'],
['age', 20],
]);
这里保留两个map是有原因的,因为在真实的操作中,我试图从两个不同的模式中获取数据,以便在Map中存储两个不同的数据。
现在,我尝试按以下顺序迭代both Map
Iteration-1 : country, Chile, country, Austria. //Index 0 from both the maps
Iteration-2 : age, 30 , age, 20. // Index 1 from both the maps.
我只想在单个forEach中迭代两个Map,我想同时获取index value和key,并将其传递给其他逻辑操作。
有人能帮我解决这个问题吗?
我尝试了下面的方法来迭代一个Map,但不知道如何处理两个Map
myMap.forEach (function(value, key) {
let array = key.split(":::");
htmlSkelton +=
"<tr>"+
"<th scope='row'>"+(counter++) +"</th>"+
"<td>"+array[1]+"</td>"+
"<td>"+array[0]+"</td>"+
"<td>"+value+"</td>"+
"</tr>"
})
3条答案
按热度按时间wbgh16ku1#
由于两个Map具有相同的键,因此可以简单地迭代一个Map,并使用其键访问另一个Map。
tf7tbtn22#
使用字符串插值而不是串联,以使代码更具可读性:
有几种方法可以做到这一点,看看这一个是否完全适合你。
afdcj2ne3#
这里可以使用
reduce
。复杂度为O(n),需要额外的内存来实现聚合数组: