如何将服务器中每个用户的ID放入数组? (Discord.js v12)

时间:2020-06-15 09:41:09

标签: javascript node.js arrays discord.js

我需要获得服务器中所有用户ID的帮助。我已经尝试了所有解决方案,显然这对我不起作用。

我已经尝试过了(这与我最相关)

//获取公会并将其存储在变量“列表”下 const list = client.guilds.cache.get(“ 335507048017952771”);

///从公会中迭代公会成员的集合,以获取每个成员的用户名属性 list.members.forEach(member => console.log(member.user.username));

2 个答案:

答案 0 :(得分:0)

公会的成员存储在集合中。您可以使用map()方法来创建仅包含ID的数组。

const Guild = client.guilds.cache.get("335507048017952771"); // Getting the guild.
const Members = Guild.members.cache.map(member => member.id); // Getting the members and mapping them by ID.
console.log(Members);
// --> ["1234567890054356", "1323534709650967", "436567540796390"] etc...

答案 1 :(得分:0)

使用地图工作正常,但是keys()是另一种解决方案,它返回地图迭代器

const list = <Guild>.members.cache.keys();
list.forEach(id => console.log(id));

如果要使其成为数组,只需使用扩展运算符

const arr = [...list];