索引迭代两个map"/>
javascript中如何根据索引迭代两个map
我刚刚使用以下代码行在 javascript 中创建了两个地图。
let myMap = new Map();
let myMap1 = new Map();
我刚刚在各自的地图中添加了以下数据。
//以下仅为示例,实际有所不同
myMap1 = new Map([
['country', 'Chile'],
['age', 30],
]);
myMap = new Map([
['country', 'Austria'],
['age', 20],
]);
在这里保留两个地图是有原因的,因为实时地我试图从两个不同的模式中获取数据以在地图中存储两个不同的数据。
现在,我尝试按以下顺序迭代两个 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 但不确定如何对两个 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>"
})
回答如下:
由于两个地图具有相同的键,您可以简单地迭代一个地图,并使用它的键访问另一个地图。
myMap1 = new Map([
['country', 'Chile'],
['age', 30],
]);
myMap2 = new Map([
['country', 'Austria'],
['age', 20],
]);
myMap1.forEach((v1, k) => {
let v2 = myMap2.get(k);
console.log(k, v1, v2);
});
更多推荐
javascript中如何根据索引迭代两个map
发布评论