【发布时间】:2021-04-15 08:01:28
【问题描述】:
我有两个数组,它们的长度相同。
let servers = ['Node1', 'Node2', 'Node3']
let counts = ['3', '4', '8']
我想创建一个新数组,它的第一个元素重复 X 次,X 是第二个数组中的数字。输出应该类似于这样:
['Node1', 'Node1', 'Node1', 'Node2', 'Node2', 'Node2', 'Node2', 'Node3', 'Node3', 'Node3', 'Node3', 'Node3', 'Node3', 'Node3', 'Node3']
Node1重复3次,Node2重复4次,Node3重复8次。
两个数组的长度可以不同,服务器也可以有不同的名称。
这是我尝试过的:
- 嵌套 forEach 两个数组,但使用上面的示例,这最多只打印 3 次。
await response.servers.forEach(async (serverName) => {
await response.counts.forEach(async (nodeNumber) => {
let number = Number(nodeNumber);
console.log(`serverName: ${serverName} | number: ${number}`);
});
});
【问题讨论】:
-
使用
for循环遍历两个数组。然后使用嵌套循环将服务器名称推送到结果数组指定的次数。 -
欢迎来到 Stack Overflow! StackOverflow 不是免费的编码服务。你应该try to solve the problem first。请更新您的问题以在minimal reproducible example 中显示您已经尝试过的内容。如需更多信息,请参阅How to Ask,并拨打tour :)
标签: javascript node.js arrays