在一条消息中将一个数组并排列出

Listing one array next to another in one message

我有两个数组,我想在数组 2 的条目旁边列出数组 1 的一个条目。

我的两个数组分别命名为 memberIDsrolesIDsmemberIDs 包含来自语音频道中成员的 ID,而 roleIDs 列出了大量来自不同角色的 ID。 为了将它们并排列出,我编写了以下代码:

message.channel.send(memberIDs.map(element => "<@" + element + "> -> " + rolesIG.map(element => "<@&" + element + ">" ).join()).join("\n"));

遗憾的是它没有像我想要的那样工作,尽管它单独列出了所有成员,在另一个站点上它列出了来自 roleIDsall 个条目,就像这样:

<@memberID1> -> <@&roleID1> <@&roleID2> <@&roleID3>

<@memberID2> -> <@&roleID1> <@&roleID2> <@&roleID3>

它希望它表现得像这样:

<@memberID1> -> <@roleID1>

<@memberID2> -> <@roleID2>

我很感激任何帮助。

你可以这样做:

var outarr = []
for(var i = 0; i < memberIDs.length; i++) {
  outarr[i] = `<@${memberIDs[i]}> -> <@${rolesIG[i]}>`
}

现在 outarr 是一个列表,其中每个项目都包含与角色 IG 串联的成员 ID